学习笔记1“局部变量静态变量与成员变量的区别”

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

学习笔记1“局部变量、静态变量与成员变量的区别”写在前面——之前一直搞不清楚各种变量,特此整理,不完善的地方欢迎大家批评指正!首先是局部变量和成员变量的区别:1、在类中的位置不同成员变量在类中方法外,而局部变量则是方法内或者方法声明上。2、在内存中的位置不同成员变量加载到堆内存而局部变量则是在栈内存。3、生命周期不同成员变量是随着对象的存在而存在,随着对象的消失而消失;而局部变量则是随着方法的调用而存在,随着方法的调用完毕而消失。4、初始化值不同成员变量都有默认的初始化值而局部变量则没有默认的初始化值,必须先定义赋值,才能使用。除此之外,局部变量和成员变量的名字可以相同,如果出现了同名的变量,遵循就近原则。示例:*/classDemo{//成员变量intnum=10;publicvoidmethod(){//局部变量//inta=5;//intnum=20;System.out.println(num);}}classTest{publicstaticvoidmain(String[]args){//创建对象Demod=newDemo();//System.out.println(d.num);//释放对象//d=null;//System.out.println(d.num);//调用method()方法d.method();}然后是静态变量与成员变量的区别1、所属不同静态变量属于类,被类的所有对象共享,所以又称为类变量;而成员变量只属于对象,所以也称为实例变量(对象变量)。2、内存中位置不同静态变量存储于方法区的静态区,而成员变量存储于堆内存。3、内存出现时间不同静态变量随着类的加载而加载,随着类的消失而消失;成员变量随着对象的创建而存在,随着对象的消失而消失。4、调用不同静态变量可以通过类名调用,也可以通过对象调用,如:对象名.静态成员类名.静态成员而成员变量只能通过对象名调用,如:对象名.成员变量示例:classPerson{privateStringname;//姓名privateintage;//年龄staticStringcountry;//国家//构造方法publicPerson(){}//带有一个参数的构造方法publicPerson(Stringname){this.name=name;}//带有二个参数的构造方法publicPerson(Stringname,intage){this.name=name;this.age=age;}//带有三个参数的构造方法publicPerson(Stringname,intage,Stringcountry){this.name=name;this.age=age;this.country=country;}//显示成员信息publicvoidshow(){System.out.println(name+---+age+---+country);}}classPersonDemo{publicstaticvoidmain(String[]args){//创建对象Personp1=newPerson(张三,38,中国);Personp2=newPerson(李四,43);Personp3=newPerson(王五,43);p1.show();p2.show();p3.show();p3.country=日本;p3.show();p1.show();p2.show();//-------------//静态的方式System.out.println(Person.country);}}

1 / 6
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功