1.继承的基本概念及实现
- 定义:一个类从已有的类那里获得其已有的属性和方法,这种现象叫做类的继承。
这个新类叫做子类,也叫做派生类;已有的那个类叫做父类,也叫做基类。
- 意义:
代码得到了极大的重用。
形成一种类的层次体系机构。
为多态创造条件。
- 继承的实现(extends关键字和implements)
extends:在 Java 中,类的继承是单一继承,所以 extends 只能继承一个类。
implements:使用 implements 关键字可以变相的使java具有多继承的特性,使用范围为类继承接口的情况,可以同时继承多个接口(接口跟接口之间采用逗号分隔)。
class Human
{
public int age;
public String name;
}
class Student extends Human
{
public double score;
}
public interface A
{
public void eat();
}
public interface B
{
public void sleep();
}
public class C implements A,B
{
}
2.继承权限问题
- 同包:父类的私有成员不可以被子类继承,其他的成员都可以被子类继承。
注意:父类的所有成员物理上都被继承过来了,但私有成员在逻辑上不可以被访问,因此继承的时候必须慎重,否则会浪费内存。(如果随意的继承会导致子类非常臃肿,创建子类对象时占用极大的空间)
3.继承的原则
- 何时选择继承?
B是一个A吗?
如果是则让B做A的子类。
- 继承必须是同种类型间继承,反映的是从一般到特殊的关系。
- 常见错误:汽车轮子成为汽车子类是错误的。(原因:汽车轮子不是汽车)
4.Java只支持单继承,不允许多继承
- 单继承:一个子类只能有一个父类
多继承:一个子类可以有多个父类(只有C++允许多继承)
- 可以有多重继承,如类B继承类A,类C继承类B,那么类C间接继承了类A
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。