认识引用类型(上)

引用(reference)数据类型

  • Java中的数据类型分为基本数据类型和引用数据类型

  • 看例程,理解引用

引用数据类型和基本数据类型的相同点

  • 都可以用来创建变量,可以赋值和使用其值

  • 本身都是一个地址

引用数据类型和基本数据类型的不同点

  • 基本类型变量的值,就是地址对应的值。引用数据类型的值还是一个地址,需要通过 ”二级跳”找到实例

  • 引用数据类型是java的一种内部类型,是对所有自定义类型和数组引用的统称,并非 特指某种类型

尝试输出一下引用类型的值到控制台,看看是什么

public class class_second {
  public static void main(String[] args) {

      // >> TODO m1是一个Merchandise类型的引用 ,只能指向Merchandise类型的实例
      // >> TODO 引用数据类型变量包含两部分的信息:类型和实例 ,也就是
      //   TODO 每一个引用数据类型的变量(简称引用) ,都是指向某一个类(class /自定义类型)
      //   TODO 的每一个实例/对象(instance/object) 不同类型的引用在Java中都是引用
      // >> TODO 引用类型的信息在创建的时候就已经确定 ,可以通过给引用赋值 ,让其指向不同的实例
      // >> TODO 比如m1就是Merchandise类型 ,只能指向Merchandise的实例
      Merchandise m1;
      m1 = new Merchandise();
      Merchandise m2 = new Merchandise();
      Merchandise m3 = new Merchandise();
      Merchandise m4 = new Merchandise();
      Merchandise m5 = new Merchandise();

      //>>T0D0给一个引用赋值,则两者的类型必须一样。m5可以给m1赋值,因为他们类型是一样的
      m1 = m5;
      System.out.println("m1=" + m1);
      System.out.println("m2=" + m2);
      System.out.println("m3=" + m3);
      System.out.println("m4=" + m4);
      System.out.println("m5=" + m5);

      Merchandise m6 = m1;
      System.out.println("m6=" + m6);
      m6 = m5;
      System.out.println("m6=" + m6);

      System.out.println("m1=" + m1);
      System.out.println("m2=" + m2);
      System.out.println("m3=" + m3);
      System.out.println("m4=" + m4);
      System.out.println("m5=" + m5);
       
      int a = 999;
      //此时我们给a 赋值 ,这里的a是基本数据类型 ,而不是上面的引用数据类型a
      //因此及时将上面的引用打印出来 ,值也不会有任何变化

  }
}
posted @   comia  阅读(32)  评论(0编辑  收藏  举报
(评论功能已被禁用)
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App
点击右上角即可分享
微信分享提示