Java,面向对象_进阶(总结)
一、this关键字的使用:
-this调用的结构:属性、方法;构造器
-this调用属性或方法时,理解为:当前对象或当前正在创建的对象。
public void setName(String name)
{
this.name=name;
}
public Person(String name)
{
this.name=name;
}
-this(形参列表)的方式,表示调用当前类中其他重载的构造器。
二、面向对象的特征二:继承性
-继承性的好处:
>减少了代码的冗余,提高了复用性;
>提高了扩展性;
>为多态的使用,提供了前提。
-Java中继承性的特点:
>局限性:类的单继承性(后续通过类实现接口的方式,解决单继承性的局限性)
>支持多层继承:一个父类可以声明多个子类
-基础:class A extends B{}
-理解:子类获取了父类中声明的全部属性、方法(但是受封装性影响)
三、方法的重写
-面试题:方法重载与重写的区别?
>重载:“两同一不同”
>重写:继承以后,子类覆盖父类同名同参数的方法
四、super关键字的使用
-super可以调用的结构:属性、方法;构造器
-super的理解:父类的
-super调用属性、方法:
>如果子父类中出现了同名的属性,此时使用super.的方式,表明调用的是父类的属性
>当子类重写了父类的方法,如果需要调用父类被重写的方法时,需要使用super.的方式,表明调用的是父类的方法
-super调用构造器:
>在子类的构造器中,首行要么使用"this(形参列表)",要么使用"super(形参列表)"
>在子类的构造器中,如果为声明this或super默认为super.()
五、子类对象实例化的全过程
-结果上:体现为继承性
-过程上:子类调用构造器创建对象,一定会直接或间接的调用其父类的构造器,以及父类的父类的构造器,直到调用到Object()的构造器。
六、面向对象的特征三:多态性
-狭义上的理解:子类对象的多态性
-广义上的理解:子类对象的多态性、方法的重写
-格式:Person per = new Man();(父类的引用指向子类的对象)
-多态的好处:极大的减少了代码的冗余,不需要定义多个重载的方法;开闭原则(对扩展开放,对修改关闭)。
>举例:public boolean equals(Object obj)
-多态的使用:虚拟方法调用;属性不存在多态。
-多态的逆过程:向下转型,使用强转符()。
>为了避免出现ClassCastException,建议先使用instanceof进行判断
七、Object类的使用
-根父类
-equals()的使用:
>重写与不重写的区别
>面试题:==和equals()的区别
-toString()的使用
>Object中toString()调用后,返回当前对象所属的类的地址值。
>开发中常常重写toString(),用于返回当前对象的属性信息。
更多推荐


所有评论(0)