成员变量和局部变量的区别?
2016-04-16 20:21
162 查看
成员变量:
成员变量定义在类中,在整个类中都可以被访问
成员变量随着对象的建立而建立,存在于对象所在的堆内存中
成员变量有默认初始化值
局部变量
局部变量只定义在局部范围内,如:函数内,语句内等
局部变量存在于栈内存中
作用的范围结束,变量空间会自动释放
局部变量没有初始化值
创建对象,使用对象
对象内存结构:
Car c1 = new Car();
c1.color = "blue";
Car c2 = new Car();
成员变量定义在类中,在整个类中都可以被访问
成员变量随着对象的建立而建立,存在于对象所在的堆内存中
成员变量有默认初始化值
局部变量
局部变量只定义在局部范围内,如:函数内,语句内等
局部变量存在于栈内存中
作用的范围结束,变量空间会自动释放
局部变量没有初始化值
创建对象,使用对象
class Car{ String color = "red"; int num = 4; void show(){ System.out.println("color="+color+"..num="+num); } } class CarDemo{ public static void main(String[] args){ Car c = new Car();//创建对象 c.color = "black";//对对象的属性进行修改 c.show(); //使用对象的功能 } }
对象内存结构:
Car c1 = new Car();
c1.color = "blue";
Car c2 = new Car();
相关文章推荐
- android studio生成签名文件,以及SHA1和MD5值
- 活动被回收
- 【Bestcoder #79 div1】C
- 写了 35 年代码的老程序员的最大遗憾
- cout,print,printf 和sprintf的区别
- 学习笔记(一)Android 的简介
- 完美数列(25)
- 牛刀小试(一):垂直菜单
- NFA
- [网络编程]——网络编程_TCP_Socket通信
- leetcode 102.Binary Tree Level Order Traversal-数的层次遍历|递归|非递归实现
- 机器学习【machine learning】学习笔记【1】
- ubuntu系统qt中播放音频和视频遇到的问题及解决方法
- NOIP2008普及组传球游戏(动态规划)——yhx
- Match the string--hdu1797(模拟)
- java 版的复利计算器(张俊毅 周修文)
- UVa 1590 IP Networks
- Web工程目录和tomcat目录
- ajaxSubmit() 上传文件和进度条显示
- C++之类的六个默认成员函数