您的位置:首页 > 编程语言 > Java开发

java抽象类和接口异同点

2016-01-22 10:44 435 查看
(一)java抽象类和接口在语法上的区别有以下几点:
1、抽象类在java语言中表示的是一种继承关系,一个类只能使用一次继承关系。但是一个类却可以实现多个接口。继承抽象类使用的关键字为extends,实现接口使用的是implements关键字,继承写在前面,实现接口写在后面。
2、再抽象类中可以有自己的数据成员,也可以由非abstract的成员方法,而在接口中只能有静态的不能被修改的数据成员,接口中所有的方法都是abstract的。
3、实现接口的类必须实现其中的所有方法,接口中不能有实现方法。继承自抽象类的子类实现所有的抽象方法,抽象类中可以有非抽象方法。
4、接口中默认的变量默认是public static final型,且必须赋予初值,所有实现类中不能重新定义,也不能改变其值。抽象类中的变量默认为friendly权限,其值可以在子类中重新定义,也可以重新赋值。
5、接口中的方法默认是public abstract类型的
(二)java抽象类和接口的相似之处:
1、不能实例化
2、都有为实现的方法声明
3、派生类必须实现未实现的方法,抽象类是抽象方法,接口是所有成员。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  抽象类和接口