Java变量分类
Java变量按照类型可分为两大类,1.引用类型变量,2.基本类型变量
一. 引用类型:
① 数组
② 类,接口
二. 基本类型
① 整形(byte,short,int,long)
② 浮点型(float,double)
③ 布尔型boolean
④ 字符型char
相同点:两者在定义时都为(变量类型 变量名);
不同点:引用类型需用new关键字在堆内存中开辟空间,并将变量指向开辟出的空间。若想更改变量中的属性值,需要用变量名打点找到其属性值进行修改,引用变量存储的实际上是一个引用,即C语言中的指针。基本类型变量则直接存储数据。
引用传递和值传递:引用传递即改变引用变量存储的数据,值传递即改变基本类型变量存储的数据。
① 引用传递:static Student stu=new Student(“name”,”1”);
public void x(){stu.name=x}
publicvoid static main(String[] str){System.out.print(stu.name)}
输出结果是name,说明引用传递值发生改变
② 值传递:static int i=1;
public void x(){i=2 }
public void static main(String[] str){System.out.print(i)}
输出结果是1,说明值传递时值不发生改变
按照作用范围分:1.全局变量,2.局域变量
① 全局变量在方法之外定义,与方法同级;局域变量,在方法内定义,一种是不在任何语句定义,例如:public void x(){int i=0},其中i时局域变量,一种是在语句中定义的变量,例如:public void x(){for(int i=0;i<2;i++){}}
② 全局变量作用范围:对象被创建时全局变量被创建,对象被销毁时,全局变量被销毁,即全局变量生命周期与对象一致。局域变量作用范围:方法或语句运行开始时被创建,运行结束时变量被销毁。