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

java中抽象类与接口的区别

2019-08-17 07:17 1101 查看

抽象类:抽象类更多的是用来定义一个很多东西的本质,即他是不是,如果我们可以声明一个抽象类annimal,然后新建一个cat类去继承它,通过重写annimal类的抽象方法,那么我们就能够拥有annimal类的特征了。

接口:接口与抽象类的定义其实差不多,但是究其本源,接口更多的是用来定义“能不能”的特性,比如我猫能吃饭,能够翻墙等。同时,接口中能够定义变量,但是变量是public static finnal 的类型,即静态常量,不能够修改,且必须赋初值。

抽象类与接口的区别:

1:抽象类只能够延续java单继承的特性,一个类只能继承一个类,但是一个类却能够继承多个接口。

2:抽象类中,可以有成员变量,也可以有非抽象的方法,但是在接口中,只能够有静态常量,而且方法也只能是抽象方法。

3:抽象类中可以如果被一个类继承,那个类如果没有重写所有的抽象方法,那么该类必须被声明为抽象类,而你如果继承一个接口,那么你必须实现其所有的方法。

4:接口中不能够声明static方法,抽象类可以

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: