Java 中的对象指的是什么?


简介

在现实生活中,我们可以称桌子、椅子、灯等为对象,因为它们具有一些属性和功能。我们可以说,任何具有属性或特性以及某些功能的东西,例如灯具有底座和灯泡,并且可以照亮房间,因此它是一个对象。在 Java 中,我们也有对象,它们也拥有自己的属性。对象基本上是类的实例,而类提供了创建对象的蓝图。让我们简要讨论一下对象以及如何在 Java 中创建对象。

定义

要掌握面向对象技术,您必须熟悉对象。面向对象编程旨在创建功能类似于现实世界的编程。它还强调数据是如何关联的。有几个 OOP 原则,对象就是其中之一。对象是一个独立的实体,具有其自身独特的特征和行为。类是对象的蓝图。因此,类的实例就是对象。在本部分中,我们将讨论 Java 对象定义语法。对象共享的特征如下:

  • 标识 - 标识是用于唯一识别该项目的特征,例如随机 ID 号或内存位置。简单的对象,如灯,可能只有两种状态(开和关)和两种动作(打开,关闭),但它们仍然具有标识(例如,项目的制造商 ID)。任何外部用户都无法看到 ID 的实际值。它是 JVM 用于在内部跟踪对象的机制。

  • 状态 - 变量存储对象的状态(字段)。

  • 行为 - 方法说明对象的行为。

Learn Java in-depth with real-world projects through our Java certification course. Enroll and become a certified expert to boost your career.

如何在 Java 中创建对象?

创建对象有以下步骤:

  • 声明

  • 实例化对象

  • 初始化对象

创建对象的语法

声明

声明主要定义对象的数据类型。声明告知编译器您希望使用给定的名称来引用指定类型的一个变量。声明的对象不会被实例化。使用 new 运算符创建 Date 对象或任何其他对象。

Class_name Object_name;

对象的类型始终是类的名称。

实例化

通过 new 运算符为新生成的分配内存。new 需要一个参数,该参数包含对象的构造方法。构造方法负责初始化新对象。换句话说,实例化是创建类实例/对象的流程。它占用对象的初始内存并返回引用。对象的实例化充当 Java 中类的蓝图。实例化有两种方法:

  • 使用 new 关键字 - 为了实例化类,Java 提供了 new 关键字。让我们看看如何使用 new 关键字来实例化类。

//declaring an object Dog Mydog; //Instantiating using new keyword Mydog=new Dog();

这里 Dog() 是类的构造方法,是一个无参数构造方法,即没有参数。但是,如果构造方法是有参数的,那么我们也必须初始化参数,例如:

Mydog=new Dog(2,Bruno);

让我们看一个例子来更好地理解。

示例

Open Compiler
public class Dog{ int age; String name; Dog(int a, String n)//parameterized constructor { age=a; name=n; } public void display(){ System.out.println(age); System.out.println(name); } public static void main(String args[]){ Dog mydog=new Dog(12, "Bruno");//Object instantiation and object declaration mydog.display();//object initialization } }

输出

12
Bruno
  • 使用静态工厂方法 - 类也可以通过执行静态工厂函数来实例化。类可以提供一个公共静态工厂方法,它只是一个返回类实例的静态方法。请始终记住,它与工厂方法模式不同。

让我们看一个静态工厂方法的示例

示例

Open Compiler
public class Dog{ int age; String name; Dog(int age, String name)//parameterized constructor { this.age=age; this.name=name; } public static Dog mydog(int age, String name) { return new Dog(age,name); } public static void main(String args[]) { Dog d=new Dog(23,"bruno"); System.out.println(d.age+" "+d.name); } }

输出

23 bruno

初始化

类包含构造方法以初始化新创建的该类型实例。构造方法可以通过类声明中的其他方法识别出来,因为它们与类具有相同的名称并且没有返回类型。

初始化对象主要有四种方法:

  • 朴素方法 - 这个概念是使用 new 运算符获取类的实例,并使用类 setter 设置其值。

  • 构造方法 - 使用 new 运算符创建对象时,必须指定构造方法。构造方法的名称与类相同,并且不返回任何内容。它可以接受一组参数,这些参数是我们想要设置值的字段,或者它可以是无参数的(无参数构造方法)。如果我们声明一个没有构造方法的类,编译器将自动生成一个。

  • 复制构造方法 - 复制构造方法是一个特殊的构造方法,它从现有对象创建一个新对象。它只接受一个参数,即同一类的另一个实例。使用 this() 表达式,我们可以直接从复制构造方法执行另一个构造方法。

  • 匿名内部类 - 使用“双括号初始化”作为初始化对象的替代方法。这会在未命名的内部类中生成一个单一的实例初始化器。强烈建议不要使用此技术。

结论

在本文中,我们学习了对象的概念以及如何创建对象。对象是面向对象编程语言的基本构建块。在开始使用 Java 之前,您必须熟悉对象的概念。类是对象的蓝图,因此我们可以说对象是类的实例。

更新于:2023-08-23

122 次查看

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告