Abstract Class 和interface的区别
2014-11-07 19:01
453 查看
本质上来说,接口和抽象类的概念不一样。接口是对动作的抽象,抽象类是对根源的抽象。
1.抽象类表示的是这个对象是什么,接口表示的是这个对象能做什么。比如男人和女人这两个类,可以抽象成一个抽象类叫做人,人可以吃东西,够可以吃东西,吃东西就可以定义为接口
2.所以在高级语言中,抽象类只能继承一个,接口可以实现多个
3.接口中的方法全部全部抽象,而抽象类至少需要一个抽象方法
4.抽象类的方法必须在子类中实现,所以抽象类不能有抽象构造方法和抽象静态方法,抽象类的子类只要有一个抽象方法没有实现,则这个子类也必须是抽象的。抽象类可以有静态方法,但是接口不能有
5.抽象类的抽象方法可以是public,protected,default,但是接口中的抽象方法只能是public,且默认是public abstract
6.抽象类可以包含静态成员变量,且访问类型任意,接口中的成员变量必须是public static final。
1.抽象类表示的是这个对象是什么,接口表示的是这个对象能做什么。比如男人和女人这两个类,可以抽象成一个抽象类叫做人,人可以吃东西,够可以吃东西,吃东西就可以定义为接口
2.所以在高级语言中,抽象类只能继承一个,接口可以实现多个
3.接口中的方法全部全部抽象,而抽象类至少需要一个抽象方法
4.抽象类的方法必须在子类中实现,所以抽象类不能有抽象构造方法和抽象静态方法,抽象类的子类只要有一个抽象方法没有实现,则这个子类也必须是抽象的。抽象类可以有静态方法,但是接口不能有
5.抽象类的抽象方法可以是public,protected,default,但是接口中的抽象方法只能是public,且默认是public abstract
6.抽象类可以包含静态成员变量,且访问类型任意,接口中的成员变量必须是public static final。
相关文章推荐
- abstract class 和 interface的区别
- Interface 和 Abstract Class 的区别
- abstract class与interface区别
- Interface 和 abstract class 区别
- abstract class和interface 的区别
- abstract class和interface有什么区别?
- 详细解析Java中抽象类和接口的区别 abstract class和interface(转)
- abstract class和interface的区别(转载)
- abstract class和interface的区别
- abstract class和interface的区别
- abstract class和interface的区别
- abstract class和interface有什么区别?
- abstract class和interface 两者区别
- abstract class与interface的区别
- abstract class和interface的区别
- 在Java和C#中,abstract class和interface的区别
- abstract class和interface有什么区别
- Interface 和 Abstract Class 的区别
- abstract class和interface的区别
- abstract class和interface有什么区别?