读书笔记(数据类型和变量)

    xiaoxiao2022-07-13  148

    简介

    引用类型
    变量作用于
    对象的默认引用:this

    引用类型

    引用类型可分为:类引用类型、接口引用类型、数组引用类型,分别对应一下三种

    Doll doll; java.lang.Runnable myThread; int[] intArray;

    类类型和类引用类型的区分:

    /** - 变量beibei是“Doll类引用类型”的变量,而new语句创建的Doll对象属于“Doll类型”,(引用类型引用类类型) */ Doll beibei = new Doll("beibei");
    基本类型和引用类型的区别:
    基本类型待变简单的数据类型,比如整数,浮点数。引用类型所引用的实例能表示任意一中复杂的数据结构。基本数据类型仅表示数据结构,引用类型不仅表示数据结构还包括操纵数据的行为。java虚拟机处理引用类型变量和基本类型变量的方式是不一样的:对于基本数据类型的变量,java虚拟机会为其分配数据类型实际占用的内存大小,而对于引用数据类型变量,他仅仅是一个指向堆区中某个实例的指针。
    用new关键字创建对象

    作用:

    为对象分配内存,将对象的实例变量自动初始化为其变量类型的默认值如果实例变量在声明时被显式初始化,那就把初始化值赋给实例变量调用构造方法返回对象引用

    变量的作用域

    变量更具作用域的不同可分为以下类型:

    成员变量:在类中声明,作用域为整个类局部变量:在方法的内部货方法的一个代码块中声明,作用域为{}内部方法参数:方法或构造方法的参数,作用域为整个方法或构造方法异常处理参数:和方法参数相似,做你哥用于为异常处理代码块
    实例变量和静态变量

    成员变量可分为两种:一种是用static修饰的,静态变量,一种是不用static修饰的实例变量 区别:

    静态变量在内存中只有一个,java虚拟机在加载类的过程中为静态变量分配内存,==静态变量位于方法区,被类的所有实例共享。==静态变量可以直接通过类名被访问。静态变量的生命周期取决于类的生命周期累的每个实例都有相应的实例变量。每创建一个实例,java虚拟机都睡为实例变量分配一次内存,实例变量位于堆区。实例变量的生命周期取决于实例的生命周期
    局部变量的生命周期

    java虚拟机的某个线程调用一个方法时,会为这个方法中的局部变量分配内存,结束调用一个方法时,会结束这个方法中局部变量的生命周期 局部变量使用时的限制:

    不能别static、private、protected、public修饰不能通过类名访问
    成员变量和局部变量同名

    在同一个作用域中不允许出现多个相同名字的变量 在一个方法内,可以定义和成员变量相同的局部变量或参数,此时,成员变量被屏蔽,需要访问成员变量时使用this关键字

    将局部变量的作用域最小化可增加代码的可读性,可维护性,减少出错

    对象的默认引用:this

    当一个对象创建好后,java虚拟机会自动给它分配一个默认引用:this this的使用场景:

    在类的构造方法中,通过this语句调用类的另一个构造方法,有参构造中将参数赋给实例变量:this.color = color;在一个方法中局部变量或参数和实例变量同名时,用this调用实例变量在一个方法内访问当前实例的引用

    最后干一碗鸡汤

    人家说,十年磨一剑。就要十年之际,本应是宝剑出鞘的时候,却发现心中无墨、脑中无物、手上无一技之长。时光不会倒流,岁月不会再给你一次机会,过去十年已经过去。还有接下来的十年,接下来的二十年,如何用现在的决定,去影响未来的十年呢?除了找准方向开始,更要去坚持。
    最新回复(0)