2013年5月2日

第10章 内部类

摘要: 10.1 创建内部类此标题如若修改为:定义内部类并创建,我觉得更合适一些。定义内部类的方法:把类的定义置于外围类的里面创建内部类的方法:OuterClassName.InnerClassName innerClassInstance = outerClassInstance.new InnerClassName(Para list);Sample: 1 class OuterClass { 2 public class Inner1 { 3 public Inner1(String name) { 4 this.name = name; 5 ... 阅读全文

posted @ 2013-05-02 16:00 peter9606 阅读(170) 评论(0) 推荐(0) 编辑

第9章 接口

摘要: 9.1 抽象类和抽象方法抽象类可以不含有任何抽象方法;含有抽象方法的类必须被声明为abstract。9.2 接口接口中可以含有域,隐含为static final(实际上也是Public的)。来看一下含有abstract class和interaface的继承体系的加载和初始化顺序。以下几条在书中没有讲到,中Java 6下试出来的:Interface中不能含有初始化块,标准的编译错误提示:The interface xxx cannot define an initinalizer.Interface中不能定义构造器。(因为interface中没有构造器和初始化块,所以interface中的域不 阅读全文

posted @ 2013-05-02 15:45 peter9606 阅读(100) 评论(0) 推荐(0) 编辑

第8章 多态

摘要: 8.2 转机Java中除了static, final & private(private归为final一类)方法,都是动态绑定。域同样是静态绑定。8.3 构造器和多态8.3.3 构造器内部的多态方法的行为在C++中,应该避免在构造函数中调用virtual方法,因为这样的结果可能不是你想要的。同样在Java中,应当避免在构造器中调用static, final或者private以外的方法。如果在基类的构造器中调用了被导出类覆盖的方法,实际上是动态绑定在起作用,也就是基类中调用了导出类的行为。 1 import static java.lang.System.out; 2 class Bas 阅读全文

posted @ 2013-05-02 14:47 peter9606 阅读(121) 评论(0) 推荐(0) 编辑

第7章 复用类

摘要: 7.2 继承语法如果基类没有默认构造函数,那么必须在Derive类的构造函数中显示调用Base类的带参构造函数。 1 import static java.lang.System.out; 2 class Base { 3 Base(String name){ 4 out.println("Base constructor"); 5 } 6 } 7 8 public class Derive extends Base { 9 Derive(){10 super("test"); /* If comment out this line, result a 阅读全文

posted @ 2013-05-02 13:44 peter9606 阅读(123) 评论(0) 推荐(0) 编辑

第6章 访问权限控制

摘要: 6.1 包:库单元package语句必须是文件中的第一行非注释程序代码。6.2 Java访问权限修饰词类成员访问修饰符:Public,任何人都可以访问Protected,子类可访问+包访问权限(默认)包访问权限,同包中的类可访问Private,任何人都不可以访问6.4 类的访问权限public:public类的类名必须与编译单元的文件名相同(大小写敏感)包访问权限:相同目录下的所有不具有明确package声明的文件,都被视作是该目录下默认包的一部分。 阅读全文

posted @ 2013-05-02 11:29 peter9606 阅读(94) 评论(0) 推荐(0) 编辑

第5章 初始化与清理

摘要: 5.2 方法重载Java的方法重载与C++一样,不能以返回值作为两个函数重载的区别。另外,后面的章节中会有介绍,Java存在一个叫做协变返回类型的:子类中的一个覆盖方法可以返回基类被覆盖方法返回值的子类。5.4 this关键字Java中this关键字同样代表正在调用方法的对象本身,是编译器为每个非static方法传递的第一个参数(隐藏传递,程序员感觉不到,与Java,C++这种隐藏传递相对的是,Python要求明确方法的第一个参数为self,也就是对象自己的引用。)Java中的this有一个更重要的用途,在构造函数里调用重载的其他构造函数。C++中,一个构造函数不可以调用另外一个构造函数,因为 阅读全文

posted @ 2013-05-02 09:59 peter9606 阅读(160) 评论(0) 推荐(0) 编辑

导航