Java 静态变量,静态函数,静态代码块,构造代码块
来源:互联网 发布:手机淘宝注册 编辑:程序博客网 时间:2024/06/01 16:34
一、静态变量和静态函数
1、类加载时,先将静态成员加载入方法区中的静态存储区
2、静态变量一般用于所有对象都共有的数据,因此可以将数据设为静态,由类保存,无需每个对象都存有一份数据。
3、静态函数不能访问非静态成员变量,因为非静态成员变量是属于对象的数据,由对象创建而存在,当对象未创建时,非静态成员变量还未存在。而静态函数,随着类的加载就存储在静态存储区域,所以静态函数内不能访问非静态成员变量。
4、静态函数里面,不能存在this关键字,原因是this表示当前对象,而静态方法是随类加载存在,还未创建对象,所以不能出现this。
二、静态代码块
1、随着类的加载而执行,当执行同个类的多个对象创建时,只进行一次类的加载即可,所以静态代码块只执行一次。
2、作用:给类进行初始化。构造函数给对象进行初始化。当类无需创建对象时(类中全为静态成员),无需构造函数。当类无需对象时,可用静态代码块进行数据附初值。
Class person{static String country;static{country = "China";}}
三、构造代码块
1、给对象进行通用初始化,随着对象的创建而执行,即每创建一个对象执行一次。(注意与静态代码块区分)
Class person{private String name;{name = "啦啦啦";}}
四、静态代码块,构造代码块,构造函数的执行顺序
静态代码块>构造代码块>构造函数
0 0
- Java 静态变量,静态函数,静态代码块,构造代码块
- java类加载及初始化过程(静态变量、静态代码块、代码块、构造函数)
- Java中的构造函数、构造代码块、静态代码块
- Java静态代码块、构造函数、构造代码块
- Java静态代码块、构造代码块、构造函数
- Java静态代码块、构造代码块、构造函数
- 构造函数、构造代码块、静态成员、静态代码块
- JAVA 静态代码块和构造函数
- 几个问题(--------)父子类静态变量、静态代码块、非静态代码块、构造函数
- Java静态变量 静态代码块 主函数 成员变量 构造代码块 构造函数的执行顺序
- java静态代码块,代码块和构造函数
- java 静态代码块 代码块 构造函数执行顺序
- JAVA代码块非静态代码块与静态代码块构造函数比较
- java 静态代码块、静态变量、成员变量、构造代码块、构造方法的执行顺序
- 静态代码块,非静态代码块,构造函数
- 构造块/静态代码块
- 关于静态变量,静态代码块,实例变量,实例代码块,构造函数的执行顺序
- 静态变量、静态代码块、变量、代码块、构造函数执行顺序
- IO流
- 在 Xcode 7 中安装 Alcatraz,再次安装vvdocumenter
- WampServer 2.5设置外网访问/局域网手机访问(403 Forbidden错误解决方法)
- Qt quick 实现bootstrap界面之标签控件
- Spark-项目中分析日志的核心代码
- Java 静态变量,静态函数,静态代码块,构造代码块
- Meanshift--聚类算法
- Ubuntu14.10 更新源
- 浅谈null
- hjr教程-汇编(二):指令操作地址和数据
- Java千百问_07JVM架构(001)_java内存模型是什么样的
- Vector源码注释,粗略理解
- 深入理解JVM03--内存分配与回收策略
- mysql慢查询分析