`
wsql
  • 浏览: 11810419 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

Java语言中几组混淆的知识

 
阅读更多
Java语言的知识很是丰富。有些知识似曾相似,实则大相径庭。本文介绍Java语言几组混淆的知识。

第一组:final、finally和finalize?

阿情说:final和finally是Java语言中的关键字,前者用来修饰类、变量与方法,具有“最终”或者说“终极的”特性,因而,被它修饰的类不可再继承,例如String、Math类,被它修饰的变量,实际上就是常量变量了,其值不能再修改,被它修饰的方法,该方法不能再覆盖。后者使用于异常处理机制中,不管程序代码是否发生异常,其所构成的代码块一定要被执行,因而资源的回收、流的关闭都置于其里。finalize是Object类所定义的finalize()方法的方法名,方法的功能是在GC(垃圾收集器)将对象从内存中清除出去之前做必要的清理工作。Object类是所有的类的超类,因而所有类都具有finalize()方法,子类可以通过覆盖该方法以整理系统资源或者执行其他清理工作。

第二组:Collections和Collection?

阿情说:虽然Collections和Collection都是在java.util包里,但前者是一个类,该类完全在Collection进行操作或者返回Collection的静态方法组成,后者是一个接口,它是基本的集合接口,List和Set接口继承于它。

第三组:类、对象和引用?

阿情说:类是对象的抽象,对象是类的实例,引用是对象的名字,并能操作对象。面向对象设计与编程,也可以理解为面向类设计与编程。一切皆为对象,万事万物都是有对象构成,也可以理解认识世界,分门别类。

第四组:抽象类与接口?

阿情说:抽象类与接口是面向对象抽象特向的两个方面。前者表示abstract修饰的类,后者是一种特殊的抽象类。关于抽象类和接口,可以从语法差异性、设计理念差异性认识与理解。

第五组:Vector、ArrayList和LinkList?

阿情说:Vectot和ArrayList是基于数组方式的存储结构,按索引遍历方便快捷,但是不利于增加与删改操作,Vector里面的方法是同步方法,具有线程安全特性,但性能不如ArrayList,因而,根据具体需要做出合理选择。LinkList是基于链表是存储结构,增删较为便利,但遍历有些低效。

第六组:Hashtable和HashMap?

阿情说:虽然两者都实现了Map接口,即把唯一的key映射到特定的value上。其差异在于:1)HashMap没有排序,允许一个null键和多个null值,而Hashtable则不允许。2)HashMap把Hashtable的contains方法去掉了,改作containsValue()和containsKey()方法。3)Hashtable继承自Dictionary类,HashMap是Java1.2引进的Map接口的实现。4)Hashtable的方法是同步的,而HashMap的方法不是。

第七组:wait()和sleep()、notify()和notifyAll()?

阿情说:wait()是Object类的方法,在其他线程调用此对象的notify()和notify()方法前,导致当前线程等待,sleep()是Thread类的方法,在指定的时间里让当前正在执行的线程休眠(暂停执行)。notify()和notifyAll()都是Object类的方法,前者表示唤醒此对象监视器上等待的单个线程,后者表示唤醒此对象监视器上等待的所有线程。

欢迎各位“看官”不吝赐教,在此先谢。后续逐一充实与完善。

分享到:
评论

相关推荐

    JAVA上百实例源码以及开源项目

    Java 组播组中发送和接受数据实例 3个目标文件。 Java读写文本文件的示例代码 1个目标文件。 java俄罗斯方块 一个目标文件。 Java非对称加密源码实例 1个目标文件 摘要:Java源码,算法相关,非对称加密  Java非...

    JAVA上百实例源码以及开源项目源代码

    Java 组播组中发送和接受数据实例 3个目标文件。 Java读写文本文件的示例代码 1个目标文件。 java俄罗斯方块 一个目标文件。 Java非对称加密源码实例 1个目标文件 摘要:Java源码,算法相关,非对称加密  Java非...

    java开源包11

    github-java-api 是 Github 网站 API 的 Java 语言版本。 java缓存工具 SimpleCache SimpleCache 是一个简单易用的java缓存工具,用来简化缓存代码的编写,让你摆脱单调乏味的重复工作!1. 完全透明的缓存支持,对...

    java开源包6

    github-java-api 是 Github 网站 API 的 Java 语言版本。 java缓存工具 SimpleCache SimpleCache 是一个简单易用的java缓存工具,用来简化缓存代码的编写,让你摆脱单调乏味的重复工作!1. 完全透明的缓存支持,对...

    java开源包9

    github-java-api 是 Github 网站 API 的 Java 语言版本。 java缓存工具 SimpleCache SimpleCache 是一个简单易用的java缓存工具,用来简化缓存代码的编写,让你摆脱单调乏味的重复工作!1. 完全透明的缓存支持,对...

    java开源包4

    github-java-api 是 Github 网站 API 的 Java 语言版本。 java缓存工具 SimpleCache SimpleCache 是一个简单易用的java缓存工具,用来简化缓存代码的编写,让你摆脱单调乏味的重复工作!1. 完全透明的缓存支持,对...

    java开源包101

    github-java-api 是 Github 网站 API 的 Java 语言版本。 java缓存工具 SimpleCache SimpleCache 是一个简单易用的java缓存工具,用来简化缓存代码的编写,让你摆脱单调乏味的重复工作!1. 完全透明的缓存支持,对...

    java开源包5

    github-java-api 是 Github 网站 API 的 Java 语言版本。 java缓存工具 SimpleCache SimpleCache 是一个简单易用的java缓存工具,用来简化缓存代码的编写,让你摆脱单调乏味的重复工作!1. 完全透明的缓存支持,对...

    java开源包8

    github-java-api 是 Github 网站 API 的 Java 语言版本。 java缓存工具 SimpleCache SimpleCache 是一个简单易用的java缓存工具,用来简化缓存代码的编写,让你摆脱单调乏味的重复工作!1. 完全透明的缓存支持,对...

    java开源包10

    github-java-api 是 Github 网站 API 的 Java 语言版本。 java缓存工具 SimpleCache SimpleCache 是一个简单易用的java缓存工具,用来简化缓存代码的编写,让你摆脱单调乏味的重复工作!1. 完全透明的缓存支持,对...

    java开源包3

    github-java-api 是 Github 网站 API 的 Java 语言版本。 java缓存工具 SimpleCache SimpleCache 是一个简单易用的java缓存工具,用来简化缓存代码的编写,让你摆脱单调乏味的重复工作!1. 完全透明的缓存支持,对...

    java开源包1

    github-java-api 是 Github 网站 API 的 Java 语言版本。 java缓存工具 SimpleCache SimpleCache 是一个简单易用的java缓存工具,用来简化缓存代码的编写,让你摆脱单调乏味的重复工作!1. 完全透明的缓存支持,对...

    java开源包2

    github-java-api 是 Github 网站 API 的 Java 语言版本。 java缓存工具 SimpleCache SimpleCache 是一个简单易用的java缓存工具,用来简化缓存代码的编写,让你摆脱单调乏味的重复工作!1. 完全透明的缓存支持,对...

    java开源包7

    github-java-api 是 Github 网站 API 的 Java 语言版本。 java缓存工具 SimpleCache SimpleCache 是一个简单易用的java缓存工具,用来简化缓存代码的编写,让你摆脱单调乏味的重复工作!1. 完全透明的缓存支持,对...

    Java资源包01

    github-java-api 是 Github 网站 API 的 Java 语言版本。 java缓存工具 SimpleCache SimpleCache 是一个简单易用的java缓存工具,用来简化缓存代码的编写,让你摆脱单调乏味的重复工作!1. 完全透明的缓存支持,对...

    asp.net知识库

    Oracle中PL/SQL单行函数和组函数详解 mssql+oracle Oracle编程的编码规范及命名规则 Oracle数据库字典介绍 0RACLE的字段类型 事务 CMT DEMO(容器管理事务演示) 事务隔离性的一些基础知识 在组件之间实现事务和异步...

Global site tag (gtag.js) - Google Analytics