成员变量与局部变量

简介: 成员变量与局部变量

变量: 数据类型 变量名 = 值

成员变量

直接定义在类中,方法的外面,也称全局变量或字段,不要叫属性

1.类成员变量: 使用 static 修饰的字段

2.实例成员变量: 没有使用 static 修饰的字段

3.在方法不能定义 static 变量,static 属于类

方法属于对象。

局部变量

变量除了成员变量,其他都是局部变量

  1. 方法内部的变量
  2. 方法的参数
  3. 代码块中的变量

成员变量与局部变量区别

变量的初始值

  • 成员变量: 默认是有初始值的
  • 局部变量: 没有初始值,所以必须先初始化才能使用

变量的使用域

  • 成员变量:在整个类中都有效
  • 局部变量:只在它定义的大括号内生效

成员变量,可以先使用后定义,局部变量必须先定义而后才能使用。

作用域及生命周期

  • 变量的生命周期指的是一个变量被创建并分配内存空间开始,到该变量被销毁并清除其所占内存空间的过程,作用域不同,生命周期就不一样

变量使用注意点

1.局部变量定义后,必须显示初始化后才能使用,因为系统不会为局部变量执行初始化操作。这就意味着,定义局部变量后,系统并未为这个变量分配内存空间。直到程序为这个变量赋值时,系统才会为局部变量分配内存,并将初始值保存到该内存中。

2.局部变量不属于任何类或实例,因此它总是保存在其所在方法的栈内存中。

3.基本数据局部变量:直接把这个变量的值保存到该变量所对应 的内存中。引用数据局部变量:这个变量内存中存的是地址,通过该地址引用到该变量实际引用堆里的的对象。

4.栈内存中的变量无需系统垃圾回收,其往往随方法或代码块的运行结束而结束。

public class Person {
  static int totalNums;
  String name;
  int age;
  int times;
  void eat(String food) {
      int a = 10;
    if(times >= 3) {
      System.out.println("不能再吃了");
    }else {
      System.out.println("吃了"+ food);
      times++;
    }
  }
  Person(String n,int a){
    name = n;
    age = a;
    Person.totalNums++;
  }
  public static void main(String[] args) {
    Person per = new Person("zs",18);
    System.out.println(Person.totalNums);   
    per.eat("米饭");
  }
}
相关文章
|
存储
Qt使用 QSetting 对 ini 配置文件进行操作
Qt使用 QSetting 对 ini 配置文件进行操作
1420 0
|
机器学习/深度学习 数据采集 人工智能
人类生产力的解放?揭晓从大模型到AIGC的新魔法
本文从介绍大模型的概念延伸到大模型的革命意义。作者讲述了通过大模型的加持,让AIGC有了更多的可能性。
127392 6
Qt对动态库(*.dll)的封装以及使用
Qt对动态库(*.dll)的封装以及使用
1353 0
|
运维 监控 安全
深入了解WGCLOUD - 开源运维监测平台
WGCLOUD是一款轻量高效的运维监测系统**,开源免费,性能高效,稳定安全,开箱即用,部署实施操作简单,它可以让任何角色快速上手使用,比如我们的开发工程师,产品工程师,项目经理,运维工程师,数据库工程师等
深入了解WGCLOUD - 开源运维监测平台
|
算法 Unix Linux
【C/C++ 疑难解决】深入解析C++链接错误:实用的调试技巧和方法
【C/C++ 疑难解决】深入解析C++链接错误:实用的调试技巧和方法
1633 1
|
安全 数据安全/隐私保护 C++
Qt C++ 键盘事件全解析:从基础到高级,实现精彩互动体验
Qt C++ 键盘事件全解析:从基础到高级,实现精彩互动体验
2469 0
|
数据挖掘
区域边界跟踪(虫爬法)和目标邻域点边界跟踪法
区域边界跟踪(虫爬法)和目标邻域点边界跟踪法
318 0
|
编解码 对象存储 UED
[Halcon&标定] 单相机标定
[Halcon&标定] 单相机标定
1864 2
|
存储 编译器 C++
C++ 面向对象三大特性——多态
面向对象三大特性的,封装,继承,多态,今天我们研究研究C++的多态。
|
自然语言处理 C语言 数据格式
转义字符(Escape character)
转义字符(Escape character)
1824 0

热门文章

最新文章