zoukankan      html  css  js  c++  java
  • JAVA基本类型和引用类型

    今天刷题,碰到一个题目

    想不起来引用类型是什么意思了,搜了一下

    基本类型

    就是一个数字,字符什么的;

    引用类型

    引用类型代表着一个内存地址,这个地址里放着什么数据内容,它不关心,比如,MyBook a; a 就是一个应用类型,在内存中开辟了一个空间,放着地址,如果有 a = new MyBook(); 则给引用变量a 赋值,给MyBook的数据内容开辟空间,并将首地址赋给a。

    引用类型可以相互赋值 MyBook a,b;a = new MyBook();b = a;是可以的,a和b都是一个MyBook()对象存放的首地址。

    再回过头看这道题,AB没有疑问,C可以,但是不推荐,D final修饰引用变量,引用不能变,内容可以变;修饰基本数据类型的变量,内容不能变.

    public class Test {
        public static void main(String[] args)  {
            final MyClass myClass = new MyClass();
            System.out.println(++myClass.i);
     
        }
    }
     
    class MyClass {
        public int i = 0;
    }

      这段代码可以顺利编译通过并且有输出结果,输出结果为1。这说明引用变量被final修饰之后,虽然不能再指向其他对象,但是它指向的对象的内容是可变的。

  • 相关阅读:
    Unity3D性能优化之资源导入标准和属性设置篇
    博客主题-Next风格
    Pytorch 搭建 LeNet-5 网络
    CIFAR数据集解读
    Mnist数据集解读
    博客主题——cnbook
    博客主题——element v2
    更换清华镜像源
    图像插值技术——双线性插值法
    PASCAL VOC2012数据集解读
  • 原文地址:https://www.cnblogs.com/TaoChiangBlog/p/5956351.html
Copyright © 2011-2022 走看看