美文网首页
重捡Java(四)类与对象 引用

重捡Java(四)类与对象 引用

作者: 我很惊讶 | 来源:发表于2020-05-05 20:54 被阅读0次

Java中通过new来创建一个对象

new Hero();

此时对象Hero已被创建,但是并不能被访问,此时需要一个引用来指向该对象

Hero h = new Hero();

此时就可以通过h来访问该对象了

多个引用一个对象,其实操作的对象是一个。例如:

public class Hero {

    String name; // 姓名

    float hp; // 血量

    float armor; // 护甲

    int moveSpeed; // 移速

    public static void main(String[] args) {
        //使用一个引用来指向这个对象
        Hero h1 = new Hero();
        Hero h2 = h1;  //h2指向h1所指向的对象
        Hero h3 = h1;
        Hero h4 = h1;
        Hero h5 = h4;
        h1.name = "AAAAAAAA";
        System.out.println(h1.name);
        System.out.println(h2.name);

    }
}

上面代码打印可知,h2.name输出的值和h1.name一样

多个对象一个引用,其实就相当于用后面的值覆盖前面的值
例如:

    public static void main(String[] args) {
        //使用一个引用来指向这个对象
        Hero h1 = new Hero();
        Hero h2 = h1;  //h2指向h1所指向的对象
        Hero h3 = h1;
        Hero h4 = h1;
        Hero h5 = h4;
        h1.name = "AAAAAAAA";
        h1 = new Hero();
        System.out.println(h1.name);
        System.out.println(h2.name);

    }

结果是

null
AAAAAAAA
说明h1已经不是原来的对象了,但原来的对象还是存在的,h2指向的原来对象的值未变

相关文章

  • 重捡Java(四)类与对象 引用

    Java中通过new来创建一个对象 此时对象Hero已被创建,但是并不能被访问,此时需要一个引用来指向该对象 此时...

  • 重捡Java(七)类与对象 this

    简单一说,this指当前对象,也可以指当前对象的构造方法

  • 重捡Java(六)类与对象 重载

    又一个常用,而且经常掰扯不清的概念。很多教程都在告诉你一件事,重载和重写的区别,然而这俩只是名字接近一些,不用强求...

  • 重捡Java(五)类与对象 继承

    非常重要的一个原理,也是Java面向对象编程的一个非常重要特性。比如英雄联盟中的物品,都有名称和价格,这就是他们的...

  • 重捡Java(七)类与对象 构造方法

    通过一个类创建一个对象,这个过程叫做实例化 实例化是通过调用构造方法(又叫做构造器)实现的 构造方法与类名一致 例...

  • 重捡Java(十一)类与对象 静态static

    这里因为我会了就不展开了static就是指这个类的属性:所有这个类构造出来的对象,他们的类属性都是一样的,修改一个...

  • 重捡Java(七)类与对象 方法传参

    这有一些常用的东西,有一些概念性的说法容易搞混1.形参。用来接收调用该方法时传递的参数。只有在被调用的时候才分配内...

  • 重捡Java(十三)类与对象 单例模式

    又一款面试笔试常用的知识点单例模式又叫做 Singleton模式,指的是一个类,在一个JVM里,只有一个实例存在。...

  • Java集合类总结

    Java集合类 1.简介: java集合类包含在java.util包下集合类存放的是对象的引用,而非对象本身。集合...

  • 2.4 多态(面向对象)

    1、Java中的多态 对象的多种形态 引用多态父类的引用可以指向本类的对象父类的引用可以指向子类的对象 方法多态创...

网友评论

      本文标题:重捡Java(四)类与对象 引用

      本文链接:https://www.haomeiwen.com/subject/bhpvghtx.html