1.类与类的关系
继承关系,只支持单继承
1.1子类不能继承父类私有资源
1.2构造方法不能继承
1.3子类如果想更改父类的功能,可以重写
(两同两小一大)方法名+参数列表+方法签名
2.类与接口的关系
2.1实现关系既可以单实现也可以多实现
比如:class A implements Inter1{}
比如:class A implements Inter2,Inter3{}
A是实现类 Inter1 2 3是被实现的接口
实现类去实现接口必须实现接口中所有的抽象方法,
如果有任何一个没有实现,就得声明成抽象子类
2.2创建实现类对象时,一般使用实现类对象,而不是多态对象,因为效果一样
3.接口与接口的关系
3.1继承关系。可以单继承,可以多继承
比如:interface A extends Inter1{}
比如:interface A2 extends Inter2,Inter3{}
A,A2是子接口,Inter1,2,3是被继承的父接口
注意接口A2的实现类需要实现接口A2继承自Inter2和3的所有抽象方法
4.抽象类与接口的区别
4.1抽象类是一个特殊的类,用class定义,特殊在这个类中可以定义
没有方法体的方法(抽象方法)。
4.2接口可以理解成一个特殊的抽象类,特殊在接口中所有的方法
都是抽象方法,但是注意接口不是类,用interface定义
4.3抽象中有构造方法,为了给子类创建对象时调用
4.4接口中没有构造方法,子类调用的是父类的构造方法
4.5接口可以多继承,但抽象类只能单继承
4.6抽象类可以定义普通的成员变量,但接口只能定义静态常量
4.7接口与抽象类均不可实例化(创建对象)
4.8抽象是后天重构的结果,接口是先天设计的结果