java拾遗之关键字static
来源:互联网 发布:wpf编程宝典c 编辑:程序博客网 时间:2024/06/05 04:23
趁着最近有时间多复习一些~static关键字也是比较常见的,常用于方法和类属性上,可以通过类.属性(方法名)直接调用。加上了static关键字的变量属于全局变量,在内存中只给该变量分配一个唯一的内存也就是类在内存中加载后所有的对象都共享同一个该变量的引用,之前我也不是注意很多,就写了小段代码测试了下,如下
public class StaticDemo01 {private static int initNum;private int num;static {initNum=20;}public void doSomething(){initNum-=5;}private static void addNum(){initNum+=3;}public static void main(String[] args) {StaticDemo01 staticDemo01=new StaticDemo01();staticDemo01.doSomething();System.out.println(StaticDemo01.initNum);StaticDemo01.addNum();System.out.println(StaticDemo01.initNum);StaticDemo01 staticDemo02=new StaticDemo01();staticDemo02.doSomething();System.out.println(StaticDemo01.initNum);}}
运行结果如下:
15
18
13
还有一个问题便是相关元素的加载顺序,我指的是变量,方法,和块,顺序是变量—>方法—>块,测试代码如下:
public class LoadDemo {private static String test01="ww"; static{System.out.println("静态块开始加载==============");System.out.println(test01);test01="yww";System.out.println(test01);System.out.println("静态块加载完毕==============");}public static void test(){System.out.println("静态方法开始加载==============");System.out.println(test01);test01="yww1992";System.out.println(test01);System.out.println("静态方法加载完毕==============");}public static void main(String[] args) {LoadDemo.test();}}
运行结果如下:
静态块开始加载==============
ww
yww
静态块加载完毕==============
静态方法开始加载==============
yww
yww1992
静态方法加载完毕==============
0 0
- java拾遗之关键字static
- java拾遗之关键字final
- java拾遗之关键字while
- java拾遗之关键字for相关
- Java关键字之static
- java 关键字之static
- Java关键字之static
- java之关键字static
- Java之static关键字
- Java之static关键字
- java 之static关键字
- Java关键字之static
- java关键字之static
- Java之static关键字
- java之static关键字
- Java关键字之Static
- Java关键字介绍之static
- Java关键字介绍之static
- win7 x64双机联调
- C++模板函数
- 按位非运算符“~”
- soket概览
- 51nod 1206:Picture 求覆盖周长
- java拾遗之关键字static
- js中if判断表达式
- 设置centos 系统时间与物理主机一致
- Android 在ScorllView中ListView和GridView冲突解决方案
- LeetCode Missing Number
- c++ for_each
- bind9支持edns-client-subnet
- java自带线程池和队列详细讲解
- poj 3468 A Simple Problem with Integers (线段树区间更新 + 树状数组区间更新)