Java实例变量、类变量与局部变量

Java实例变量、类变量与局部变量一 实例变量也叫对象变量 类成员变量 从属于类由类生成对象时 才分配存储空间 各对象间的实例变量互不干扰 能通过对象的引用来访问实例变量 但在 Java 多线程中 实例变量是多个线程共享资源 要注意同步访问时可能出现的问题 publicclassD 以下都是实例变量 成员变量 对象变量 privateStrin publicinta

一、实例变量


也叫对象变量、类成员变量;从属于类由类生成对象时,才分配存储空间,各对象间的实例变量互不干扰,能通过对象的引用来访问实例变量。但在Java多线程中,实例变量是多个线程共享资源,要注意同步访问时可能出现的问题。

public class Demo { //以下都是实例变量(成员变量、对象变量) private String nameString; public int age; protected int priority; //实例方法 public String getNameString(){ return this.nameString; } }

二、类变量


也叫静态变量,是一种比较特殊的实例变量,用static关键字修饰;一个类的静态变量,所有由这类生成的对象都共用这个类变量,类装载时就分配存储空间。一个对象修改了变量,则所以对象中这个变量的值都会发生改变。

public class Demo { //类变量(静态变量) public static int a = 0; //实例变量 private String nameString; }

三、局部变量


方法中或者某局部块中声明定义的变量或方法的参数被称为局部变量,他们只存在于创建他们的block里({}之间)无法在block外进行任何操作,如读取、赋值。在Java多线程中,每个线程都复制一份局部变量,可防止某些同步问题发生。

 //类变量(静态变量) public static int a = 0; //实例变量 private String nameString; public void test(){ //局部变量 int temp = 1; System.out.println(temp); }

四、他们的区别

Java实例变量、类变量与局部变量


成员变量和局部变量的区别

       成员变量:

          ①成员变量定义在类中,在整个类中都可以被访问。

          ②成员变量随着对象的建立而建立,随着对象的消失而消失,存在于对象所在的堆内存中。

          ③成员变量有默认初始化值。

      局部变量:

          ①局部变量只定义在局部范围内,如:函数内,语句内等,只在所属的区域有效。

          ②局部变量存在于栈内存中,作用的范围结束,变量空间会自动释放。

          ③局部变量没有默认初始化值 

      在使用变量时需要遵循的原则为:就近原则

      首先在局部范围找,有就使用;接着在成员位置找

成员变量和静态变量的区别

      1、两个变量的生命周期不同

            成员变量随着对象的创建而存在,随着对象被回收而释放。

            静态变量随着类的加载而存在,随着类的消失而消失。

      2、调用方式不同

            成员变量只能被对象调用。

            静态变量可以被对象调用,还可以被类名调用。

      3、别名不同

            成员变量也称为实例变量。

            静态变量也称为类变量。

      4、数据存储位置不同

            成员变量存储在堆内存的对象中,所以也叫对象的特有数据。

            静态变量数据存储在方法区(共享数据区)的静态区,所以也叫对象的共享数据。







版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/213795.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月18日 下午5:37
下一篇 2026年3月18日 下午5:38


相关推荐

  • 黑苹果完整安装教程,内含后续系统优化「建议收藏」

    黑苹果完整安装教程,内含后续系统优化「建议收藏」第一种安装:VM虚拟机这类主讲装双系统,VM虚拟机参考博客https://blog.csdn.net/doudou19930614/article/details/81407446虚拟机下载:http://www.epinv.com/post/10434.html第二种安装:双系统准备工具:1.镜像https://osx.cx/tag/原版镜像/或者度盘链接:https://p…

    2022年5月15日
    136
  • 月之暗面估值破百亿美元,凭什么?

    月之暗面估值破百亿美元,凭什么?

    2026年3月12日
    3
  • 服务器资源监控工具—nmon

    服务器资源监控工具—nmon      在性能测试过程中,对服务端的各项资源使用情况进行监控是很重要的。对于监控服务器资源的工具nmon是最好不过了。      nmon不仅可以监控内存使用情况、磁盘适配器、文件系统中的可用空间、CPU使用率、页面空间和页面速度、异步I/O(仅适用于AIX)、网络文件系统(NFS)、磁盘I/O速度和读写比率、服务器详细信息和资源、内核统计信息、消耗资源进程、运行队列信息等。而且它资源…

    2022年5月12日
    46
  • java清除session_退出页面自动清除java session方法

    java清除session_退出页面自动清除java session方法在关闭页面时自动清除Sessioncookie,页面缓存。在默认情况下,session对象在关闭浏览器后并不是立刻被销毁,因此,为了考虑系统的安全性,在用户退出时,需要即刻清除session对象,防止他人盗用session对象中的信息。清除session对象内容的主要方法如下:(1)、removeAttribute()方法。该方法是用来删除session对象中保存的指定属性信息。例如:sessi…

    2022年7月12日
    17
  • 给“小白”图示讲解OFDM的原理

    给“小白”图示讲解OFDM的原理注:本文首发在QQ空间(因为需要同行的熟人们指正)。因QQ的封闭性,这里重贴一次。本文地址:http://blog.csdn.net/madongchunqiu/article/details/18614233  说明:以下文字,灰色为吹水文,黑色为正文,蓝色为采用实际应用中的参数所作的说明。  起因是这样的。时间回到07年底,4G方兴之时,同桌隔壁的隔壁”小白”同学说看不太明白OF…

    2022年6月7日
    60
  • IP地址分类(A类 B类 C类 D类 E类)「建议收藏」

    IP地址分类(A类 B类 C类 D类 E类)「建议收藏」一、简介IP地址由四段组成,每个字段是一个字节,即4个字节、每个字节有8位,最大值是255(=256:0~255)。全世界范围是唯一的32位(4个字节*8位)的标识符。IP地址由两部分组成,即网络地址和主机地址,二者是主从关系:1.网络号net-id,它标志主机(或路由器)…

    2022年4月29日
    128

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号