班(class)和接口(interface)的区别
面向对象编程(OOP)是软件开发中的一种常见范式。它有助于使用类和对象为编程带来真实的场景。类是创建对象的蓝图。程序员可以用属性和方法创建一个类。学生和老师是客体。创建对象称为实例化。OOP也使用接口。接口和类看似相似,但它们有区别。本文讨论类和接口之间的区别。类和接口之间的关键区别在于类是引用类型,它是实例化对象的蓝图,而接口是不能用于实例化对象的引用类型。
目录
1. 概述和主要区别
2. 什么是阶级
3. 什么是接口
4. 类与接口的相似性
5. 并排比较-以表格形式显示类与接口
6. 摘要
什么是班(class)?
在OOP中,一切都被视为一个对象。没有类是不可能创建对象的。类是创建对象的蓝图。建造房屋时,建筑师要绘制平面图。这个计划和上课很相似。这房子和这个物体很相似。类是构建对象的计划。对象是使用类创建的对象。
类包含属性和方法。学生可以拥有诸如姓名、年级、索引号等属性。学生可以有读书、散步、学习等方法。必须使用属性和方法创建类。
用许多编程语言创建类的语法如下。它是使用关键字类创建的。
类名{
//属性
//方法
}
C和Java等编程语言遵循类似的语法来使用类创建对象。假设类名是Student。
学生s1=新生();
这个s1就是对象。“new”关键字用于为属性分配内存。类还有一个构造函数来初始化属性或变量。
类成员(如属性和方法)具有访问修饰符。访问说明符描述这些成员对其他类的可访问性和可见性。类的成员可以具有访问说明符,如public、private和protected。其他类可以访问公共成员。私有成员只有类可以访问。在类和相关子类中可以访问受保护的成员。
什么是接口(interface)?
抽象是面向对象编程的支柱。它将隐藏实现细节并向用户显示功能。抽象是通过使用抽象类和接口来实现的。抽象方法没有实现。至少包含一个抽象方法的类称为抽象类。
当有两个抽象类时,应该实现在这些类中声明的方法。一个新的类用于实现这些方法。如果两个类都有相同的方法,可能会导致歧义问题。因此,Java和C等编程语言都有一个接口。
接口只包含方法的声明。没有实现的方法。此外,接口不能用于创建对象。它们用于支持多个继承并保护代码。
接口语法如下。Interface使用关键字“Interface”。
接口接口名称{
类型method1(参数_列表);
类型method2(参数_列表);
}
根据上面的说明,接口只有声明。没有定义。因此,接口不能实例化对象。它只给出了接口是什么的抽象视图。接口中声明的方法可以由一个或多个类实现。类使用关键字“implement”来实现接口。请参阅下面使用Java编写的示例。
根据上述程序,A和B是接口。接口A有一个方法声明,即sum()。接口B具有方法声明sub()。类C实现了A和B两个接口。因此,C类同时定义了sum()和sub()方法。创建C类型的对象后,可以同时调用sum()和sub()方法。
接口内声明的方法必须始终是公共的,因为实现类定义了它们。一个接口也可以从另一个接口继承。
班(class)和接口(interface)的共同点
- 两者都是引用类型。
- 两者都与面向对象编程有关。
班(class)和接口(interface)的区别
类与接口 | |
类是一种引用类型,它是创建对象的蓝图。 | 接口是无法实例化的引用类型。 |
对象实例化 | |
类用于实例化对象。 | 无法实例化接口,因为方法无法执行任何操作。 |
建造师 | |
类包含一个构造函数,用于初始化变量。 | 接口不包含构造函数,因为它们几乎不是任何要初始化的变量。 |
关键字 | |
类使用关键字“class”。 | 接口使用关键字“interface”。 |
访问说明符 | |
类的成员可以是私有的、公共的和受保护的。 | 接口的成员应该始终是公共的,因为实现类定义了它们。 |
总结 - 班(class) vs. 接口(interface)
类和接口在面向对象编程中被广泛使用。类和接口的区别在于类是引用类型,它是实例化对象的蓝图,而接口是不能用来实例化对象的引用类型。一个类可以实现许多接口。但它只能扩展一个超类。In接口可以继承许多接口,但不能有实现。两者都有其重要性。程序员可以根据开发软件来使用它们。
下载pdf类vs接口
你可以下载这篇文章的PDF版本,并按照引文说明离线使用。请在这里下载PDF版本的类和接口的区别