Java 中接口和类的区别
类
类是创建单个对象的蓝图。类可以包含以下任何变量类型。
局部变量 − 在方法、构造函数或代码块内部定义的变量称为局部变量。变量将在方法内声明和初始化,并在方法完成后销毁。
实例变量 − 实例变量是在类内部但位于任何方法外部的变量。这些变量在类实例化时初始化。可以从该特定类的任何方法、构造函数或代码块中访问实例变量。
类变量 − 类变量是在类内部、任何方法外部,使用 static 关键字声明的变量。
接口
接口是 Java 中的一种引用类型。它类似于类。它是抽象方法的集合。类实现接口,从而继承接口的抽象方法。
除了抽象方法外,接口还可以包含常量、默认方法、静态方法和嵌套类型。方法体仅存在于默认方法和静态方法中。
编写接口类似于编写类。但是类描述了对象的属性和行为。而接口包含类实现的行为。
以下是类和接口之间的一些重要区别。
| 序号 | 关键点 | 类 | 接口 |
|---|---|---|---|
| 1 | 支持的方法 | 类可以同时具有抽象方法和具体方法。 | 接口只能具有抽象方法。从 Java 8 开始,它还可以具有默认方法和静态方法。 |
| 2 | 多重继承 | 不支持多重继承。 | 接口支持多重继承。 |
| 3 | 支持的变量 | 支持 final、非 final、static 和非 static 变量。 | 仅允许 static 和 final 变量。 |
| 4 | 实现 | 类可以实现接口。 | 接口不能实现接口,它可以扩展接口。 |
| 5 | 关键字 | 类使用 class 关键字声明。 | 接口使用 interface 关键字声明。 |
| 6 | 继承 | 类可以使用 extends 关键字继承另一个类并实现接口。 | 接口只能继承接口。 |
| 7 | 访问 | 类可以具有任何类型的成员,例如 private、public。 | 接口只能具有 public 成员。 |
| 8 | 构造函数 | 类可以具有构造函数方法。 | 接口不能具有构造函数。 |
类与接口示例
public class JavaTester {
public static void main(String args[]) {
Animal tiger = new Tiger();
tiger.eat();
Tiger tiger1 = new Tiger();
tiger1.eat();
}
}
interface Animal {
public void eat();
}
class Tiger implements Animal {
public void eat(){
System.out.println("Tiger eats");
}
}
输出
Tiger eats Tiger eats
广告
数据结构
网络
关系型数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP