1.为什么要使用抽象类和接口(也就是说系统开发中用抽象类和接口有什么好处,可以解决什么问题)
(1)、使用抽象类能够提高代码复用能力
(2)、提供一个统一规范,继承该抽象类的所有的类, 都要实现抽象类中定义的方法,以此保证所有的子类都有相似的行为
(3)、接口为了专整体代码的控制性。
(4)、调用接口中的函数方法,不用自己再重复写了,可以直接用别人写好的函数方法拿来用!
(5)、用来在多人开发中,大家共同实现这个接口来达到协同作业的目的
2.抽象方法与抽象类的关系
(1)、抽象方法:在类中没有方法体的方法,就是抽象方法。
(2)、抽象类:含有抽象方法的类就叫抽象类。
(3)、抽象类中可能有抽象方法,也可能没有抽象方法。
(4)、如果一个类中有抽象方法,它必须得是抽象类。
3.接口与抽象类的关系
(1)、接口可以多重继承 ,抽象类不可以 。
(2)、接口定义方法,不给实现;而抽象类可以实现部分方法
(3)、接口中基本数据类型的数据成员,都默认为static和final,抽象类则不是 如果事先知道某种东西会成为基础类, 那么第一个选择就是把它变成一个接口。
(4)、抽象类的成员可以具有访问级别,而接口的成员全部抄public级别
(5)、抽象类可以包含字段,而接袭口不可以,
(6)、抽象类可以继承接口,而接口不能继承抽象类
(7)、抽象类的成员可以百具有具体实度现,而接口不行
(8)、抽象的子类可以选择性实现其基类的抽象方法,而接口的子类必须实现
4.如何定义抽象方法、抽象类、接口。
(1)、//抽象方法public function saySelf();
(2)、class Privat{//创建一个类}
(3)、class 子类 extends 父类{}、使用:子类 implements 接口1,接口2 {
所以接口的方法,必须定义出来
}
5.抽象类和接口能否被实例化
(1)、都不可以,但是接口可以引用。
(2)、抽象类不能直接实例化,子类继承抽象类,必须完成抽象类中抽象方法的定义
6.抽象类和接口被继承后,子类的定义应注意什么问题
(1)、所以接口的方法,必须定义出来