第三次学JAVA再学不好就吃翔(part21)--局部变量与成员变量
学习笔记,仅供参考
文章目录
- 面向对象
- 局部变量与成员变量的区别
- 来几个例子
- 注意事项
面向对象
局部变量与成员变量的区别
- 在类中的位置不同
- 成员变量:在类中方法外
- 局部变量:在方法定义中或者方法声明上
- 在内存中的位置不同
- 成员变量:在堆内存(成员变量属于对象,对象进堆内存)
- 局部变量:在栈内存(局部变量属于方法,方法进栈内存)
- 生命周期不同
- 成员变量:随着对象的创建而存在,随着对象的消失而消失
- 局部变量:随着方法的调用而存在,随着方法的调用完毕而消失
- 初始化值不同
- 成员变量:有默认初始化值
- 局部变量:没有默认初始化值,必须定义,赋值,然后才能使用。
来几个例子
- 举个例子1(成员变量有默认初始化值,而局部变量没有)
class BunnyTest {public static void main(String[] args) {System.out.println("YES!");Bunny b1 = new Bunny();b1.eating(10);}}class Bunny {String name; //成员变量public void eating(int num) { //局部变量String food = "胡萝卜"; //局部变量System.out.println(name + "爱吃" + num + "根" + food);}
}
输出:
YES!
null爱吃10根胡萝卜
- 举个例子2(就近原则)
class BunnyTest {public static void main(String[] args) {System.out.println("YES!");Bunny b1 = new Bunny();b1.eating();}}class Bunny {String name;String food; //存储在堆内存中public void eating() {String food = "胡萝卜"; //存储在栈内存中System.out.println(name + "爱吃" + food); //根据就近原则,选择方法内的局部变量food}
}
输出:
YES!
null爱吃胡萝卜
注意事项
- 局部变量名称可以和成员变量名称一样,在方法中使用的时候,采用的是就近原则。
- 基本数据类型变量包括:byte,short,int,long,float,double,boolean,char
- 引用数据类型变量包括:数组,类,接口,枚举
第三次学JAVA再学不好就吃翔(part21)--局部变量与成员变量相关推荐
- 第三次学JAVA再学不好就吃翔(part107)--字符流的拷贝
学习笔记,仅供参考,有错必纠 文章目录 IO流 字符流的拷贝 拷贝纯文本文件 注意事项 自定义字符数组的拷贝 IO流 字符流的拷贝 拷贝纯文本文件 zzz.txt: 安徽财经大学 JAVA代码: pa ...
- 第三次学JAVA再学不好就吃翔(part115)--多线程
学习笔记,仅供参考,有错必纠 文章目录 多线程 多线程引入 什么是线程 多线程并行和并发的区别 Java程序运行原理 多线程的实现方式 多线程实现的方式1 多线程程序实现的方式2 以上两种实现方式的区 ...
- 第三次学JAVA再学不好就吃翔(part37)--接口概述
学习笔记,仅供参考 文章目录 面向对象 接口 接口的概述及其特点 接口的成员特点 面向对象 接口 接口的概述及其特点 接口的概述 从狭义的角度讲就是指java中的interface 从广义的角度讲,对 ...
- 第三次学JAVA再学不好就吃翔(part31)--super关键字
学习笔记,仅供参考 文章目录 面向对象 继承 继承中成员变量的关系 this和super的区别 继承中构造方法的关系 继承中构造方法的注意事项 继承中的成员方法关系 面向对象 继承 继承中成员变量的关 ...
- 第三次学JAVA再学不好就吃翔(part36)--抽象类
学习笔记,仅供参考 文章目录 面向对象 抽象类 抽象类的概述 抽象类的成员特点 面向对象 抽象类 抽象类的概述 抽象类的概述 抽象就是看不懂的 抽象的特点 抽象类和抽象方法必须用abstract关键字 ...
- 第三次学JAVA再学不好就吃翔(part34)--多态的成员访问
学习笔记,仅供参考 文章目录 面向对象 多态 多态概述 多态的成员访问 成员变量 成员方法 静态成员方法 面向对象 多态 多态概述 多态的概述 事物存在的多种形态 多态实现的前提 要有继承关系 要有方 ...
- 第三次学JAVA再学不好就吃翔(part33)--final关键字
学习笔记,仅供参考 文章目录 面向对象 final关键字 final关键字修饰类,方法以及变量的特点 final关键字修饰局部变量 final修饰变量的初始化时机 面向对象 final关键字 fina ...
- 第三次学JAVA再学不好就吃翔(part30)--继承
学习笔记,仅供参考 文章目录 面向对象 继承 先来个例子 继承的好处和弊端 Java中类的继承特点 继承的注意事项 面向对象 继承 继承(extends),让类与类之间产生关系,比如子父类关系. 先来 ...
- 第三次学JAVA再学不好就吃翔(part26)--static关键字
学习笔记,仅供参考 文章目录 面向对象 static关键字 静态关键字的特点 注意事项 面向对象 static关键字 先看一个例子 class Bunny0601A {public static vo ...
最新文章
- 如何将当前更改提交到git中的不同分支[重复]
- 正则表达式 2. 单字符或
- boost::coroutine模块实现非对称协程的测试程序
- 方法入门_方法的定义
- 牛客练习赛 57——manacher算法 树形dp?
- Web应用程序体系结构– Spring MVC – AngularJs堆栈
- C语言多文件编程基本格式
- python requests 重试_我可以为requests.request设置最大重试次数吗?
- C#中用WMI实现对驱动的查询
- 安装Vuecli新版本正常,但是显示版本是低版本
- axios学习笔记(二):轻松弄懂XHR的使用及如何封装简易axios
- c++ ftp服务端_重磅干货||五万字长文总结:C/C++ 知识(下篇)
- 如何在 JavaScript 面试中过五关斩六将?
- vs 外部依赖项、附加依赖项以及如何添加依赖项目
- Visual Studio 2008操作技巧
- win7下對顯示器的電源的操作
- cat tee ||
- 【Excel VBA】一键取消excel中所有隐藏sheet
- React-cra项目初始化 必做操作
- html5手机远程控制电脑,教你怎么用手机远程控制电脑