博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
类的生命周期
阅读量:7063 次
发布时间:2019-06-28

本文共 806 字,大约阅读时间需要 2 分钟。

hot3.png

类的生命周期:加载-->链接-->初始化-->使用-->卸载

 

Singleton.java

public class Singleton{    public static int i;        private static Singleton instance = new Singleton();        public static int j = 0;       private Singleton(){        i++;        j++;        System.out.println("constructor");    }        public static void sayHi(){        System.out.println("invoke static method");    }}

Client.java

public class Client{    public static void main(String[] args){        Singleton.sayHi();        System.out.println("i="+Singleton.i);        System.out.println("j="+Singleton.j);    }}

输出:

constructorinvoke static methodi=1  j=0

看完上段代码后, 一定很奇怪,j为什么是0,而不是1。 其实就在于

private static Singleton instance = new Singleton();    

这一句。类加载时,会为每个静态变量赋默认值,而初始化时是 用户自定义的值,而且顺序是从上到下,从左往右。

转载于:https://my.oschina.net/u/2250875/blog/413481

你可能感兴趣的文章
openwrt无线连接互联网的实现原理【1】
查看>>
WPS for Linux(ubuntu)字体配置(字体缺失解决办法)
查看>>
谷歌为Pwnium***竞赛再掷重金 将提供200万美元奖金
查看>>
搭建K8S高可用集群(二进制方式)
查看>>
BSON与JSON的区别
查看>>
我的友情链接
查看>>
Play Framework 模板里使用注入访问数据层
查看>>
Win2008学习(十一),解决Remote App Web访问的证书问题
查看>>
python 实现 自动oa 签到签退 发送邮件提醒
查看>>
今天打开阿里妈妈惊现 ¥50 元佣金
查看>>
Oracle 正确删除archivelog文件
查看>>
微信JS 关闭网页
查看>>
[AAuto]给百宝箱增加娱乐功能
查看>>
【iOS开发】代码实现屏幕截图功能,也可以截取某个View 模糊效果
查看>>
SpringMVC 统一返回JSON格式数据到前端
查看>>
git push -u origin master报错src refspec master does
查看>>
nginx启动失败问题集锦
查看>>
性能测试分享:Jmeter的api监控工具解决方案
查看>>
老李分享:loadrunner 的86401错误
查看>>
一张图告诉你,只会jQuery还不够!
查看>>