抽象类
1抽象方法:在定义该类的时候,有相应的方法,但是不知道具体的方法的细节
有功能的声明,但是没有功能的实现------该方法就为抽象方法
需要用abstract修饰
抽象方法必须放入抽象类
2抽象类: 抽象方法所在的类为抽象类,被abstract
3使用细节:
① 抽象类不能被实例化
②抽象必须被继承,重写父类中定义的抽象方法(给父类中定义的抽象方法加入方法体)
③抽象类可以包含实例方法(有具体的行为体现的方法)
④ 抽象类的子类必须全部实现抽象类的抽象方法,否则该子类也为抽象类
接口:
1 接口是抽象类的特殊形式-----所有的方法都是抽象方法,(当一类中所有方法都为抽象方法的时候,
就将该抽象类定义为一个接口)------interface
2 接口的应用
A 接口不能被实例化
B 应用
首先定义一个类 实现 (描述的接口和类的关系) 相应的接口
然后实现接口定义的抽象方法(重写),给方法加上方法体
3 接口实现的细节
实现类必须重写接口的所有方法,否则该实现类为抽象类
4 接口和继承的区别
继承:类和类之间的关系
实现:类和接口之间的关系
继承:只能单根继承,支持多重继承
实现:可以多继承,可以多重继承
interface A{} interface B{} interface C extends A,B{}
interface D extends A{}
interface E extends D{}
5 接口和类共同使用
一个类只能继承一个类,同时可以实现多个接口
class A{}
class B extends A implments D,E{ }
共同使用的原则:
抽象类可以代替接口,但是接口不一定代替抽象类
抽象类用来描述一个体系中的基本功能,接口用来描述
该体系中的扩展功能。
1抽象方法:在定义该类的时候,有相应的方法,但是不知道具体的方法的细节
有功能的声明,但是没有功能的实现------该方法就为抽象方法
需要用abstract修饰
抽象方法必须放入抽象类
2抽象类: 抽象方法所在的类为抽象类,被abstract
3使用细节:
① 抽象类不能被实例化
②抽象必须被继承,重写父类中定义的抽象方法(给父类中定义的抽象方法加入方法体)
③抽象类可以包含实例方法(有具体的行为体现的方法)
④ 抽象类的子类必须全部实现抽象类的抽象方法,否则该子类也为抽象类
接口:
1 接口是抽象类的特殊形式-----所有的方法都是抽象方法,(当一类中所有方法都为抽象方法的时候,
就将该抽象类定义为一个接口)------interface
2 接口的应用
A 接口不能被实例化
B 应用
首先定义一个类 实现 (描述的接口和类的关系) 相应的接口
然后实现接口定义的抽象方法(重写),给方法加上方法体
3 接口实现的细节
实现类必须重写接口的所有方法,否则该实现类为抽象类
4 接口和继承的区别
继承:类和类之间的关系
实现:类和接口之间的关系
继承:只能单根继承,支持多重继承
实现:可以多继承,可以多重继承
interface A{} interface B{} interface C extends A,B{}
interface D extends A{}
interface E extends D{}
5 接口和类共同使用
一个类只能继承一个类,同时可以实现多个接口
class A{}
class B extends A implments D,E{ }
共同使用的原则:
抽象类可以代替接口,但是接口不一定代替抽象类
抽象类用来描述一个体系中的基本功能,接口用来描述
该体系中的扩展功能。