Java中的类和接口之间的区别

作者: Laura McKinney
创建日期: 2 四月 2021
更新日期: 4 可能 2024
Anonim
java 080308 【掌握】抽象类与接口区别
视频: java 080308 【掌握】抽象类与接口区别

内容


类和接口都用于创建新的引用类型。类是字段和在字段上操作的方法的集合。接口具有完全抽象的方法,即没有任何人的方法。接口在语法上类似于类,但是类和接口之间的主要区别在于可以实例化一个类,但是永远不能实例化一个接口。因此,让我们借助下面显示的比较表来了解类和接口之间的更多区别。

  1. 比较表
  2. 定义
  3. 关键差异
  4. 结论

比较表

比较基础接口
基本的实例化一个类以创建对象。接口永远无法实例化,因为方法无法在调用时执行任何操作。
关键词接口
访问说明符班级成员可以是私人的,公开的或受保护的。接口的成员始终是公共的。
方法 定义类的方法以执行特定的操作。接口中的方法纯粹是抽象的。
实施/扩展一个类可以实现任何数量的接口,并且只能扩展一个类。一个接口可以扩展多个接口,但不能实现任何接口。
建设者 一个类可以具有构造函数来初始化变量。接口永远不会有构造函数,因为几乎没有任何变量可以初始化。

类的定义

没有Java的类,类是Java编程中最重要的方面。一个类创建引用类型,这些引用类型用于创建对象。一个类具有签名和主体。班级的签名包含班级的名称和信息,以告知该班级是否继承了另一个班级。类的主体具有字段和在这些字段上操作的方法。使用关键字创建类 。让我们看看如何声明一个类。

类class_name {/ *字段...方法* /}

当实例化一个类时,创建的每个对象都包含一个字段和方法的副本。在类内声明的字段和成员可以是静态的也可以是非静态的。每个对象的静态成员值是恒定的,而每个对象根据其要求以不同的方式初始化非静态成员。


类的成员具有访问说明符,这些说明符决定成员对用户或子类的可见性和可访问性。访问说明符是公共的,私有的和受保护的。一个类可以由另一个类使用访问说明符继承,该说明符将决定子类(继承类)中超类(继承的类)成员的可见性。因此,类满足了面向对象编程中数据隐藏和封装的概念。

接口定义

接口也是用Java定义的引用类型之一。接口的重要性在于,在Java中,一个类只能继承一个类。为了避免这种限制,Java的设计人员引入了接口的概念。接口在语法上类似于类,但是缺少字段声明,并且接口内的方法没有任何实现。使用关键字声明接口 接口。让我们查看接口的声明。

接口interface_name {type var_name = value;输入method1(parameter-list);输入method2(parameter-list); 。 。 }

接口没有定义在接口内部声明的任何方法,因为它缺少要操作的字段。仅仅因为接口内的任何方法都不会执行任何操作,所以永远无法实例化接口。如果接口具有任何字段成员,则必须在声明它们时对其进行初始化。接口从不包含任何构造函数,因为它缺少要初始化的字段成员。因此,接口仅定义类必须执行的操作,而不是类必须执行的操作。

一旦创建了接口,就可以使用关键字通过任何数量的类来实现 实施。但是实现接口的类必须定义接口内部的所有方法。一个接口还可以使用以下方法继承另一个接口 延伸 关键词。如果一个类实现了扩展另一个接口的接口。然后,一个类必须定义出现在链中的两个接口的方法。接口内的方法必须始终是公共的,因为实现它们的类必须访问它们。

Java中类和接口之间的主要区别

  1. 可以通过创建其对象来实例化一个类。永远不要实例化接口,因为在接口内部声明的方法是抽象的,并且不执行任何操作,因此不使用实例化任何接口。
  2. 使用关键字类声明一个类。以相同的方式,使用关键字接口创建接口。
  3. 类的成员可以具有访问说明符,例如public,private,protected。但是接口的成员始终是公共的,因为实现它们的类必须访问它们。
  4. 定义了一个类内部的方法以对在该类中声明的字段执行操作。由于接口缺少字段声明,因此接口内部的方法纯属抽象。
  5. 一个类可以实现任意数量的接口,但只能扩展一个超类。一个接口可以扩展任何数量的接口,但不能实现任何接口。
  6. 一个类在其内部定义了构造函数以初始化变量。但是,接口没有任何构造函数,因为没有要初始化的字段。接口的字段仅在声明时初始化。

结论:

类和接口都有自己的重要性。当我们需要定义如何完成任务时,使用一个类。当我们需要知道必须完成什么任务时,可以使用一个接口。