本文主要是介绍JAVA基础07继承和多态,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
package com.b;
public class Test_extend {
/**
* 继承的优点:
* 提高代码复用性;
* 提高代码的可维护性;
* 让类和类之间产生关系,是多态的前提;
* 继承的缺点:
* 让类与类之间产生联系,让类的耦合性增强了。
*
* 开发的基本原则:高内聚,低耦合
* 内聚:自己完成某件事情的能力
* 耦合:类与类之间的关系
*
* 继承的特点:
* A:JAVA中类不支持多继承,但是支持多层继承
*
*/
/**
* JAVA继承中成员变量的特点:
* A:成员变量名称不一样,使用起来非常简单
* B:如果成员变量名字一样
* a:在方法里找->在当前类里找->在父类里找->报错(就近原则)
*/
/**
* supper关键字:
* this代表本类对象的引用
* supper代表父类的存储空间(可以理解为代表父类的引用)
*
* 访问成员变量:
* this.成员变量
* supper.成员变量
*
* 访问构造方法:
* this();
* supper();
*
* 访问成员方法:
* this.成员方法();
* supper.成员方法();
*
*/
/**
* JVA继承中构造方法的特点:
* A:子类构造方法执行前都会执行父类的构造方法
* B:原因:
* a:继承会继承父类的非私有成员成员
* b:子类可能会使用父类的数据,如果父类没有对数据初始话就不能使用,所以先初始话父类的构造方法。
* C:子类构造方法里,第一行默认有一个supper();
*
* 假如父类里没有无参构造方法怎么办?
* A:在父类中添加一个午餐构造方法(建议第一种,每次定义一个类都手动加一个无参构造方法)
* B:访问父类的带参构造方法
*
*/
/**
* 继承中成员方法的特点:
* 通过子类对象调用方法:
* 在子类中找->父类找->报错
*/
/**
* 继承中方法的重写:
* 应用场景:子类需要父类的功能,子类有需要在这个功能上添加新功能。
*
* 注意事项:
* A:父类私有方法不能被重写
* B:子类重写父类方法时权限不能更低(建议子类重写方法权限和父类一样)
*
* 注解:@Override 表示这个方法是重写方法
*/
}
package com.c;
public class Test_dt {
/**
* 多态的特点:
* A:有继承关系
* B: 有方法重写
* C: 有父类引用指向子类对象
*
* 多态中成员的访问特点:
* 成员变量:编译看左边,执行看左边
* 成员方法:编译看左边,执行看右边
*
* 原因:成员方法有重写
*
* 多态的好处:提高了程序的可复用性
* 具体体现:定义方法的时候,使用父类作为参数,将来使用的时候,使用具体子类型参与操作
* 多态的弊端:不能使用子类的特有的功能
*
* 转型访问子类功能:
* 向上转型:new Father F = new Son();
* 向下转型:Son s = (Son)F; 向下转型后再访问特有功能
*/
}
这篇关于JAVA基础07继承和多态的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!