今天把第三章面向对象编程思想给看完,在后半部分讲述的知识点不算多,但是这些都比前面用的更多,所以用程序例子讲述得更详细些。今天主要学习到的有下面:
1、java中的继承的构造方法。
(1)子类的构造过程必须使用父类的构造方法。
(2)子类在调用父类的构造方法时用super(argument_list)调用。
(3)如果在子类中没有显示对父类构造方法的调用,则系统默认调用父类的构造方法。
(4)如果子类中没有显示对父类构造方法的调用,而父类也没有无参数的构造方法,则系统编译出错。
(5)使用super关键字调用父类的构造方法,super语句必须在子类的构造方法的第一行。
2、java的object类(超类)。object类提供一个java中的无参构造方法。
(1)object类是java中所有类的根基类。
(2)如果一个类没有继承自那个类,那么系统默认这个类继承自object类。如:public class Person() 等价于public class Person extends Object()
在JDK包中,关于object类有很多方法说明,有需要可以去了解。
3、tostring方法。tostring方法描述的是当前对象的有关信息,返回值为string类型。对于tostrinmg 方法调用的是string字符串。
4、equals方法。equals方法在程序中使用时作为检查两个对象是否对等。
语法规则为:A.equals.B
(1)objct的equals方法定义为x.equals(y),当x和y是同一个对象的应用时,返回true,否则返回false。
如:public boolean (Object obj) { return true/false; }
(2)在JDK中提供了一些类,像string、date等,重写了object的equals方法,调用这些类的equals方法和上面的一样。
5、java中的对象转型(casting)。
(1)一个父类的引用类型变量可以指向其子类的对象。
(2)一个父类的引用不可以访问其子类中子类新建的成员(属性和方法)。
(3)可以使用引用变量instanceof类名来判断该引用类型变量所指向的对象是否属于该类或该类的子类。
(4)子类对象可以写作父类的对象来使用称向上转型upcasting,反之称向下转型downcasting。
总结:
今天学的每一个知识点都是的用程序例子来说明,有些地方都集合在一个程序来讲述,把我弄得对整个程序具体的各个部分流程、输出的理解有点混乱。今天总得来说还算可以吧,现在讲述的知识点很多都是添加在前面一个程序中,把程序完整的记录下来比较麻烦,只能做部分笔记,其他的靠记忆和理解。