对象

1.构造器

构造器名字必须和类名相同,且必须没有返回值。

java中使用new关键字来实例化一个对象。

一个类中什么都不写,也会存在一个方法,即一个无参构造器用来实例化一个对象。

使用new关键字实际上在调用构造器。

定义一个有参构造器,那么无参构造必须显示其定义。

构造器除了new本质的调用构造方法,还可以初始化对象的值。

2.面向对象三大特征

封装

private:私有

用private关键字声明的属性私有,可以通过public的get,set方法来操作这些属性

作用:提高程序安全性,隐藏代码的实现细节,统一接口,增加系统可维护。

继承

extands:扩展(students is a person)

在java中所用的都直接或者间接继承Object类。

子类继承父类,会拥有父类的全部方法。(私用的东西无法被继承)。

super关键字调用父类的构造方法,必须只能出现在子类方法或构造方法中。

子类的无参构造默认调用了父类的无参构造,即隐藏代码super();,必须在子类构造器第一行。

super和this不能同时调用构造方法。

Vs this:

对象不同:this:调用者本身这个对象。super:代表父类对象的应用

前提:this:没有继承也可以使用。super:只能在继承条件下使用

构造方法:this();本类构造。super();父类构造。

方法重写

静态方法和非静态方法区别很大。

方法的调用之和左边的定义的数据类型有关。

重写是方法的重写与属性无关

重写需要有继承关系,子类重写父类方法。

注意

方法名和参数列表都必须相同

修饰符范围可以扩大大不能缩小 (Public>Protected>Defalut>Private)

即子类方法和父类必须一致,方法体不同

子类重写父类的方法,执行子类的方法。

多态

多态是方法的多态。

必须具有继承关系,方法需要重写,父类的引用指向子类对象

instanceof

用来判断两个类之间是否有继承关系

abstract  抽象类

抽象类的所有方法,继承了它的子类,都必须要实现他的方法

抽象类不能实例化,必须靠子类实现:约束。

抽象方法必须在抽象类中

posted on 2022-09-07 22:32  zl子路  阅读(129)  评论(0)    收藏  举报