创建一个对象用什么运算符?对象实体与对象引用有何不同?

有的时候博客内容会有变动,首发博客是最新的,其他博客地址可能会未同步,认准https://blog.zysicyj.top

首发博客地址

面试题手册

系列文章地址


创建一个对象可以使用 new 关键字来实例化一个类。通过 new 运算符,我们可以在内存中分配空间,并调用类的构造方法来初始化对象。

对象实体和对象引用是两个不同的概念:

  • 对象实体:指的是在内存中真正存在的对象,它占据一定的内存空间,并保存了对象的属性值。
  • 对象引用:指的是对对象的引用或者说指针,它是一个变量,用于存储对象在内存中的地址。通过对象引用,我们可以访问和操作对象的属性和方法。

简单来说,对象实体是具体的对象,而对象引用是指向对象实体的指针。

举个例子来说明:

java 复制代码
public class Person {
    private String name;

    public Person(String name) {
        this.name = name;
    }

    public void sayHello() {
        System.out.println("Hello, my name is " + name);
    }
}

public class Main {
    public static void main(String[] args) {
        // 创建对象实体并赋值给对象引用p1
        Person p1 = new Person("Alice");

        // 创建对象实体并赋值给对象引用p2
        Person p2 = new Person("Bob");

        // 调用对象引用p1的方法
        p1.sayHello();  // 输出:Hello, my name is Alice

        // 调用对象引用p2的方法
        p2.sayHello();  // 输出:Hello, my name is Bob
    }
}

在上面的例子中,通过 new 关键字创建了两个 Person 对象实体,并分别赋值给 p1 和 p2 这两个对象引用。通过对象引用,我们可以调用对象的方法 sayHello()来输出不同的结果。

本文由mdnice多平台发布

相关推荐
geovindu9 分钟前
rust: Facade Pattern
开发语言·后端·设计模式·rust·外观模式
颜进强1 小时前
20 · NestJs循环依赖与 forwardRef:容器为什么在环面前会死,"占位再补齐"怎么救
前端·后端·ai编程
颜进强1 小时前
19 · NestJs @Global 落地账:装饰器与 `isGlobal` 参数,各在什么场景上岗
前端·后端·ai编程
她的男孩2 小时前
分片上传的大文件人人可下载:文件模块 isPrivate 在合并时被抹成 false,另有 4 个静默坑
java·后端·架构
颜进强2 小时前
18 · NestJS动态模块与 forRoot:`imports: [ConfigModule.forRoot({...})]` 到底在 import 什么
前端·后端·ai编程
xn71332 小时前
Personal AI Agent 架构实战:Memory、权限、跨 App 与本地/云端设计
人工智能·后端·agent
谢亮_vipxieliang2 小时前
Go defer、panic与recover核心知识点
开发语言·后端·golang
颜进强2 小时前
17 · 自定义 Provider 四形态:useValue / useClass / useFactory / useExisting 到底在选什么
前端·后端·ai编程
碎觉崽2 小时前
我的 QQ 机器人被腾讯反复踢下线,折腾了半个月才搞明白
后端
打工仔折腾 AI3 小时前
从零写一个CAD 05:以鼠标为中心的滚轮缩放矩阵顺序不能反
后端·python·线性代数·性能优化·矩阵·计算机外设·ai agent 实战