Java 中对象和类的区别
类和对象被认为是面向对象编程的基石。每个具有状态和行为的实体都是一个对象。这些相似对象的集合就是一个类。类只能被其对象访问,从而保护其中的数据。阅读本文以了解更多关于 Java 中的对象和类以及它们之间区别的信息。
什么是 Java 中的类?
类是一种用户定义的数据类型,充当设计其中对象的蓝图。它被认为是一个存储相似类型对象的容器。
每个类都包含数据成员和成员函数,它们可以通过其对象访问。这里,数据成员是变量,成员函数是操作变量的方法。
类是使用关键字“class”创建的。一个类可以有多个对象。一旦声明了一个类,它就可以拥有任意数量的对象。
定义类不会为其分配任何内存。内存是在实例化时创建的。类在程序开始时声明,可以通过其对象在整个程序中访问。
类封装了其中的数据成员和成员函数。如果将水果视为一个类,那么苹果、芒果、葡萄等不同种类的水果就被视为对象。
以下是使用类的益处
类促进了数据封装的概念,其主要目标是数据隐藏。它防止其他人意外修改和访问数据。除非类被其对象调用,否则无法访问它。
大型代码可以分解成类,这有助于代码重用。
它允许继承。一个类可以继承其他类的函数。继承属性的类称为子类或派生类,另一个继承属性的类称为超类或基类。
什么是 Java 中的对象?
类的实例称为对象。它是现实世界中的实体,用于访问类的成员变量和成员函数。对象被称为类的变量。
每次创建对象时,都会为其分配内存。每次调用对象时,都可以访问类的成员函数。
每个对象都具有关联的状态和行为。如果我们将猫视为一个类,它包含不同品种猫的信息,这些信息就是它的不同对象。每个对象都有一些共同的属性,例如品种、颜色、年龄等。这些元素构成了该类的成员变量,而这些对象执行的函数是吃、睡、走等,这些被称为它们的成员函数。因此,由于这些数据成员对每个对象都是唯一的,我们获得了类“猫”的不同对象。
基于其工作,对象被分类为以下类型
函数对象
容器对象
不可变对象
工厂对象
以下是使用对象的某些益处
对象用于访问类成员
我们可以在代码的任何地方调用和使用类
它们用于更改数据
对象允许轻松调试
Java 中的对象和类:示例
示例
在下面的示例中,Puppy 是一个类,而 myPuppy 是一个对象。
public class Puppy {
public Puppy(String name) {
// This constructor has one parameter, name.
System.out.println("Passed Name is: " + name);
}
public static void main(String []args) {
// Following statement would create an object myPuppy
Puppy myPuppy = new Puppy("tommy");
}
}
输出
如果我们编译并运行上述程序,则它将产生以下输出
Passed Name is: tommy
差异:对象和类
下表重点介绍了对象和类之间的主要区别 -
类 |
对象 |
|---|---|
类被称为对象的蓝图 |
类的实例被称为对象 |
类是用户定义的数据类型 |
对象是类的变量 |
它包含数据成员和成员函数 |
类的数据和方法可以通过这些对象访问 |
一个类可以有多个对象 |
一个对象只绑定到一个类 |
类没有分配内存 |
每次创建对象时都会分配内存 |
它是逻辑实体 |
它是物理实体 |
类只能创建一次 |
对象可以创建多次 |
它们不能被操作,因为它与任何内存都不相关 |
对象可以被操作 |
它没有绑定到它的值 |
对象有自己的值 |
类在程序开始时创建 |
对象可以在程序的任何地方创建 |
结论
类是创建对象的模板。它包含数据和函数,以便以后可以在其对象需要时随时访问。对象的主要任务是获取类中存在的数据或使用这些类中的函数来操作数据。类必须有一个对象。否则,它将无法使用。但是,对象只能为现有的类创建。
类和对象一起保护数据并促进许多其他概念,如数据抽象、封装、多态性、继承等,因此,这些类和对象构成了面向对象编程的基础。
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP