能知道当任何操作符(包括赋值操作符和intanceof操作符)应用于任何操作数(任何类型的类或访问能力或两者的任意组合)的结果。
知道String,Boolean和Object类使用equals(Object)方法后的结果。
知道当对已经知道值的变量进行&,|,&&,||操作时,哪些操作数被运算了,表达式最终的结果是怎样的。
知道Object和原始类型数据传入方法的不同方式,知道如何在这些方法中如何进行赋值或其它修改操作。
第六部分:覆盖,重载,运行时期类型及其面向对象
知道面向对象设计中封装的好处并能用程序实现紧密封装的类,能知道is a和has a的意义。
能正确使用覆盖和重载的方法,能正确调用父类或覆盖了的构建器,知道调用这些方法后的结果。
能实例化任何具体的一般顶层类和内部类。
第七部分:线程
能用java.lang,Thread和java.lang.Runnable两种方法定义,实例化和开始一个新的线程。
知道哪些情况下可能阻止一个线程的执行。
能使用synchronized,wait,notify和notifyAll去解决避免同时访问及其线程间相互通讯的问题。
当执行synchronized,wait,notify和notifyAll时,知道线程和对象锁之间的交互作用。
第八部分:在java.lang包中的基础类
能够应用Math类中的abs,ceil,floor,max,min,random,round,sin,cos,tan,sqrt方法。
正确描述String类不可改变的意义。
当执行一段程序,中间包含有wrapper类的一个实例,知道它运行的前提条件运行结果。能用下面wrapper类(例如Integer,Double,等等)的方法来写程序:
doublevalue
floatvalue
intvalue
longvalue
parseXxx
getXxx
toString
toHexString
第九部分:集合类框架
知道如何在特定的条件下选择适合的集合类/接口。
区分正确和不正确对hashcode方法的实现。