Java中抽象类和接口的区别

Java中抽象类和接口的区别

在Java中,抽象是通过抽象类和接口来实现的。两者都包含子类或实现类必须实现的抽象方法。以下是抽象类和接口之间的重要区别。

thead>7

抽象类与接口示例

JavaTester.java

public class JavaTester {    public static void main(String args[]) {       Animal tiger = new Tiger();       tiger.eat();       Cat lion = new Lion();       lion.eat();    } } interface Animal {    public void eat(); } class Tiger implements Animal {    public void eat(){       System.out.println("Tiger eats");    } } abstract class Cat {    abstract public void eat(); } class Lion extends Cat{    public void eat(){       System.out.println("Lion eats");    } }登录后复制

输出

Tiger eats Lion eats登录后复制

Sr.号

抽象类

接口

1

支持的方法

抽象类可以同时具有抽象方法和具体方法。

接口只能有抽象方法。从 Java 8 开始,它可以具有默认方法和静态方法。

2

多重继承

多重继承不是

接口支持多重继承。

3

支持的变量

支持最终、非最终、静态和非静态变量。

仅允许静态和最终变量。

4

实现

抽象类可以实现接口。

接口可以不实现接口,也可以扩展接口。

5

关键字

使用abstract关键字声明的抽象类。

接口使用interface关键字声明。

6

继承

抽象类可以继承另一个类使用 extends 关键字并实现接口。

接口只能继承接口。

继承

抽象类可以使用extends关键字继承。

接口只能使用implements关键字实现。

8

访问

抽象类可以有任何类型的成员,如私有、公共。

接口只能有公共成员。

以上就是Java中抽象类和接口的区别的详细内容,更多请关注每日运维网(www.mryunwei.com)其它相关文章!