static变量 java
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相关推荐
- java的静态变量怎么赋值_java static变量可以赋值吗?
java static变量可以赋值吗? 可以赋值的.static的主要作用是静态成员,指该变量的实例在内存中之存放一次.赋值是可以随便改的. java中static关键字 static是java中非常 ...
- java static 变量 初始化一次_关于java static变量初始化的疑问
java中,类的static变量作为类变量,只需要被一次初始化,就可使用,但是,我在程序中遇到一个问题: 在web.xml中配置listener,服务器启动时,ServletContextListen ...
- 转:Java中子类是否可以继承父类的static变量和方法而呈现多态特性
原文地址:Java中子类是否可以继承父类的static变量和方法而呈现多态特性 静态方法 通常,在一个类中定义一个方法为static,那就是说,无需本类的对象即可调用此方法,关于static方法,声明 ...
- Java中static变量作用和用法详解
static表示"全局"或者"静态"的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块,但是Java语言中没有全局变量的概念. 被static ...
- java static 变量,和方法从属于类
第36集 java static 变量,和方法从属于类 可以用类来直接调用static属性和方法 static方法不能调用非静态的属性和方法,反之可以 new产生的对象,不包括static 属性和方法 ...
- Java Static 变量初始化
目录 Java Static 变量初始化 直接赋值 static块初始化 实例方法初始化 解决方案 Java Static 变量初始化 static变量初始化方式 直接赋值 static块初始化 实例 ...
- java static再赋值_java static变量可以赋值吗?
详细内容 java static变量可以赋值吗? 可以赋值的.static的主要作用是静态成员,指该变量的实例在内存中之存放一次.赋值是可以随便改的. java中static关键字 static是ja ...
- Java static变量保存在哪?
测试环境: Microsoft Windows [版本 10.0.17134.165] java -version java version "1.8.0_171" Java(TM ...
- java 给static变量赋值_java static变量可以赋值吗?
java static变量可以赋值吗? 可以赋值的.static的主要作用是静态成员,指该变量的实例在内存中之存放一次.赋值是可以随便改的. java中static关键字 static是java中非常 ...
最新文章
- java 集合存储空字符窜_java中字符串对象和集合的判空
- tensorflow省钱方案-ml-engine
- opencv 检测 键盘_ubuntu+vscode 测试运行opencv
- android 实现仿QQ登录可编辑下拉菜单
- scrapy同时运行多个spider
- SAGAN原理及代码(B站详解,很值得一看)
- C# 取二位小数点(四舍五入)
- python 基础(二)
- python 标准库 —— http(http.cookiejar)
- Crackme014
- 发电机机房设计规范_柴油发电机的容量怎么选择!发电机机房如何合理设计?来涨知识!...
- 简体与繁体的相互转换
- 入门版Linux上恢复误删除的文件
- CENTOS6 安装配置 pptpd 心得
- 二维码第三方支付介绍
- windows 7不能安装谷歌浏览器怎么办?
- 虚拟内存与虚拟存储器的区别
- 如何判断一家公司是否靠谱
- 保护健康早休息-人体器官作息时间表
- epl2编程指南_epl幻想gw2回顾和gw3算法精选
热门文章
- 计算机数据与安全课件,计算机数据及软件的安全.ppt
- android 获取phone实例,Android ContentProvider获取手机联系人实例
- mac利用vscode运行c语言程序,Mac下使用VScode编译配置C/C++程序详细图文教程
- Win10 Linux GPT分区方案,win10+Ubuntu 20.04 LTS双系统安装(UEFI + GPT)(图文,多图预警)
- mysql t 保存_检查 (调试) - 离线消息保存到 MySQL - 《EMQ X Enterprise v4.1 中文文档》 - 书栈网 · BookStack...
- 如何让nginx执行python代码_生产环境部署Python语言代码(django+uwsgi+nginx)
- kalman滤波在雷达目标跟踪中的应用_简述Automotive radar中的多目标跟踪处理
- n个小球放入m个盒子中_飞么盒子卫生巾自助售卖机前景
- 小程序如何调用php程序,微信小程序调用PHP后台接口 解析纯html文本
- mysql info commit_mysql show processlist 发现大量的commit