static 变量java

  static 是java中的一个关键字,单词本身是静态的含义。一个类的成员包含变量、方法、构造方法
、代码块和内部类,static可以修饰除了构造方法以外的所有成员使用static修饰的成员称为静态成员,是属于某个类的;而不使用static修饰的成员称为实例成员,是
属于类的每个对象的。在类中,用static声明的成员变量称为静态成员变量,也称为类变量。类变量的生命周期和类相同,在整
个应用程序执行期间都有效。它有如下特点:
1、为该类的公共变量,属于类,被该类的所有实例分享,在类被载入时被显式初始化。
2、对于该类的所有对象来说,static成员变量只有一份。被该类的所有对象共享。
3、一般用“类名.类属性/方法”来调用。(也可以通过对象引用或类名访问静态成员)。
4、在static方法中不可直接访问非static的成员。
/*** static变量初体验*/
public class Student {//定义静态变量classRoomprivate static String classRoom;public static void main(String[] args) {System.out.println(Student.classRoom);//初始值为空Student.classRoom = "503";System.out.println(Student.classRoom);Student stu = new Student();//可以通过对象引用访问静态变量classRoomstu.classRoom = "507";//static变量只有一份System.out.println(Student.classRoom);}
}

执行代码如下:

总结:static变量和非static变量的区别1、份数不同:静态变量:1份
非静态变量:1个对象1份。2、存储位置不同:静态变量:方法区
非静态变量:堆3、内存分配空间的时间不同:静态变量:第一次加载类的时候
非静态变量:创建对象的时候4、生命周期不同:静态变量和类的生命周期相同
非静态变量的生命周期和所属对象生命周期相同5、调用方式不同静态变量:通过类名调用、也可以通过对象名来调用(但不推荐)
非静态变量:通过对象名调用

static变量 java相关推荐

  1. java的静态变量怎么赋值_java static变量可以赋值吗?

    java static变量可以赋值吗? 可以赋值的.static的主要作用是静态成员,指该变量的实例在内存中之存放一次.赋值是可以随便改的. java中static关键字 static是java中非常 ...

  2. java static 变量 初始化一次_关于java static变量初始化的疑问

    java中,类的static变量作为类变量,只需要被一次初始化,就可使用,但是,我在程序中遇到一个问题: 在web.xml中配置listener,服务器启动时,ServletContextListen ...

  3. 转:Java中子类是否可以继承父类的static变量和方法而呈现多态特性

    原文地址:Java中子类是否可以继承父类的static变量和方法而呈现多态特性 静态方法 通常,在一个类中定义一个方法为static,那就是说,无需本类的对象即可调用此方法,关于static方法,声明 ...

  4. Java中static变量作用和用法详解

    static表示"全局"或者"静态"的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块,但是Java语言中没有全局变量的概念. 被static ...

  5. java static 变量,和方法从属于类

    第36集 java static 变量,和方法从属于类 可以用类来直接调用static属性和方法 static方法不能调用非静态的属性和方法,反之可以 new产生的对象,不包括static 属性和方法 ...

  6. Java Static 变量初始化

    目录 Java Static 变量初始化 直接赋值 static块初始化 实例方法初始化 解决方案 Java Static 变量初始化 static变量初始化方式 直接赋值 static块初始化 实例 ...

  7. java static再赋值_java static变量可以赋值吗?

    详细内容 java static变量可以赋值吗? 可以赋值的.static的主要作用是静态成员,指该变量的实例在内存中之存放一次.赋值是可以随便改的. java中static关键字 static是ja ...

  8. Java static变量保存在哪?

    测试环境: Microsoft Windows [版本 10.0.17134.165] java -version java version "1.8.0_171" Java(TM ...

  9. java 给static变量赋值_java static变量可以赋值吗?

    java static变量可以赋值吗? 可以赋值的.static的主要作用是静态成员,指该变量的实例在内存中之存放一次.赋值是可以随便改的. java中static关键字 static是java中非常 ...

最新文章

  1. java 集合存储空字符窜_java中字符串对象和集合的判空
  2. tensorflow省钱方案-ml-engine
  3. opencv 检测 键盘_ubuntu+vscode 测试运行opencv
  4. android 实现仿QQ登录可编辑下拉菜单
  5. scrapy同时运行多个spider
  6. SAGAN原理及代码(B站详解,很值得一看)
  7. C# 取二位小数点(四舍五入)
  8. python 基础(二)
  9. python 标准库 —— http(http.cookiejar)
  10. Crackme014
  11. 发电机机房设计规范_柴油发电机的容量怎么选择!发电机机房如何合理设计?来涨知识!...
  12. 简体与繁体的相互转换
  13. 入门版Linux上恢复误删除的文件
  14. CENTOS6 安装配置 pptpd 心得
  15. 二维码第三方支付介绍
  16. windows 7不能安装谷歌浏览器怎么办?
  17. 虚拟内存与虚拟存储器的区别
  18. 如何判断一家公司是否靠谱
  19. 保护健康早休息-人体器官作息时间表
  20. epl2编程指南_epl幻想gw2回顾和gw3算法精选

热门文章

  1. 计算机数据与安全课件,计算机数据及软件的安全.ppt
  2. android 获取phone实例,Android ContentProvider获取手机联系人实例
  3. mac利用vscode运行c语言程序,Mac下使用VScode编译配置C/C++程序详细图文教程
  4. Win10 Linux GPT分区方案,win10+Ubuntu 20.04 LTS双系统安装(UEFI + GPT)(图文,多图预警)
  5. mysql t 保存_检查 (调试) - 离线消息保存到 MySQL - 《EMQ X Enterprise v4.1 中文文档》 - 书栈网 · BookStack...
  6. 如何让nginx执行python代码_生产环境部署Python语言代码(django+uwsgi+nginx)
  7. kalman滤波在雷达目标跟踪中的应用_简述Automotive radar中的多目标跟踪处理
  8. n个小球放入m个盒子中_飞么盒子卫生巾自助售卖机前景
  9. 小程序如何调用php程序,微信小程序调用PHP后台接口 解析纯html文本
  10. mysql info commit_mysql show processlist 发现大量的commit