Java中static关键字总结
2015-07-19 13:48
351 查看
一、static的特点
static可以修饰成员变量,可以修饰成员方法还可以修饰代码块。
特点如下:
随着类的加载而加载;
优先于对象存在;
被类的所有对象共享;
可以通过类名调用(限于修饰成员变量和成员方法时)。
二、static修饰的内容在内存中的位置
静态的内容在方法区的静态区。
三、注意事项
静态方法中没有this关键字:
静态内容随着类加载而加载,this是随着对象创建而存在,静态内容优先于对象存在。
静态方法只能访问静态的成员变量和静态的成员方法
static方法
静态方法不依赖于任何对象,它属于类。因此,在静态方法中不能访问类的非静态成员变量和非静态成员方法。但是非静态成员方法可以访问静态成员方法和静态成员变量。
static变量
静态变量属于类,被所有的对象共享,在内存中只有一个副本,存在于方法区中的静态区,在类初次加载时被初始化。非静态变量则为对象所有,存在于栈内存中,在创建对象时被初始化。
static代码块
static块在类初次加载的时候执行,按照static块的顺序执行,只执行一次。
static可以修饰成员变量,可以修饰成员方法还可以修饰代码块。
特点如下:
随着类的加载而加载;
优先于对象存在;
被类的所有对象共享;
可以通过类名调用(限于修饰成员变量和成员方法时)。
二、static修饰的内容在内存中的位置
静态的内容在方法区的静态区。
三、注意事项
静态方法中没有this关键字:
静态内容随着类加载而加载,this是随着对象创建而存在,静态内容优先于对象存在。
静态方法只能访问静态的成员变量和静态的成员方法
static方法
静态方法不依赖于任何对象,它属于类。因此,在静态方法中不能访问类的非静态成员变量和非静态成员方法。但是非静态成员方法可以访问静态成员方法和静态成员变量。
static变量
静态变量属于类,被所有的对象共享,在内存中只有一个副本,存在于方法区中的静态区,在类初次加载时被初始化。非静态变量则为对象所有,存在于栈内存中,在创建对象时被初始化。
static代码块
static块在类初次加载的时候执行,按照static块的顺序执行,只执行一次。
相关文章推荐
- java并发编程第四章 总结
- java并发编程第四章 线程执行器(5)
- java 以 yyyy-MM-dd hh:mm:ss 获取系统时间
- Eclipse:显示堆内存状态
- 图文介绍MyEclipse (2015) 中创建简单的Maven项目的步骤(用于生成可执行jar文件)
- JAVA基础知识(1)
- 几个简单的Java正则用例:
- JAVA_SE基础——18.方法的递归
- JAVA基础_Java的23种设计模式之单例模式
- javaAPI(字符流,转换流)
- [Java学习]使用digester 解析xml配置文件
- Java XML解析之Digester的使用
- Java通过反射机制动态设置对象属性值
- JAVA Digester 简介
- JavaSE----基础语法(关键字、标识符、注释、常量、变量)
- java多线程
- eclipse安装svn插件图文
- eclipse使用link方式安装android ADT插件
- JAVA_SE基础——17.方法的重载
- java用三种方法实现阶乘n!