关于static关键字的详解
2017-10-23 09:37
211 查看
一、static表示“全局”或者“静态”的意思;
二、可以用来修饰成员变量和成员方法,也可以形成静态static代码块,但是Java语言中没有全局变量的概念。
1、 静态变量
1. static变量并不是所在类的某个具体对象所有,而是该类的所有对象所共有的,静态变量既能被对象调用,也能直接拿类来调用;
2. 静态变量不能引用非静态方法,原因加载静态的时候,非静态的变量、方法等还不存在,当然就无法引用了。但是,非静态方法或类却能正常引用静态变量或方法。因为非静态总是在静态之后出现的。
2、 静态方法
1. 静态方法和静态变量一样,属于类所有,在类加载的同时执行,不属于某个具体的对象,所有对象均能调用。
2. 对于静态方法需要注意以下几点:
它们仅能调用其他的static 方法。
它们只能访问static数据。
它们不能以任何方式引用this 或super。
3. 静态方法一般用于工具类中,可以直接拿类名调用工具方法进行使用。
3、 静态类
一般来说静态类,只有在内部类中可以将其声明为static。此时,外部类可以直接调用内部类,因为static的内部类是在加载外部类的同时加载的,所以也就是说,并不要实例化外部类就能直接调用静态内部类。
二、可以用来修饰成员变量和成员方法,也可以形成静态static代码块,但是Java语言中没有全局变量的概念。
1、 静态变量
1. static变量并不是所在类的某个具体对象所有,而是该类的所有对象所共有的,静态变量既能被对象调用,也能直接拿类来调用;
2. 静态变量不能引用非静态方法,原因加载静态的时候,非静态的变量、方法等还不存在,当然就无法引用了。但是,非静态方法或类却能正常引用静态变量或方法。因为非静态总是在静态之后出现的。
2、 静态方法
1. 静态方法和静态变量一样,属于类所有,在类加载的同时执行,不属于某个具体的对象,所有对象均能调用。
2. 对于静态方法需要注意以下几点:
它们仅能调用其他的static 方法。
它们只能访问static数据。
它们不能以任何方式引用this 或super。
3. 静态方法一般用于工具类中,可以直接拿类名调用工具方法进行使用。
3、 静态类
一般来说静态类,只有在内部类中可以将其声明为static。此时,外部类可以直接调用内部类,因为static的内部类是在加载外部类的同时加载的,所以也就是说,并不要实例化外部类就能直接调用静态内部类。
相关文章推荐
- 关于static关键字作用详解
- 关于C和C++中static关键字的详解
- C/C++中static关键字详解
- Java中的static关键字详解
- Java学习笔记(19)--关键字static详解
- C/C++中extern、static关键字详解
- C/C++中static关键字详解
- C++中static关键字详解
- 【Java基础】----static关键字、代码块、Main方法、匿名对象详解
- java--整理下关于static关键字的知识
- 关于关键字static的理解
- 关于C语言中的static关键字
- C/C++中static关键字详解
- C/C++中static关键字详解
- Java static 关键字详解
- Java中静态代码块、静态方法、static关键字详解
- 关于Java的static关键字
- static关键字详解
- C/C++中static关键字详解
- Java编程中this和static关键字的用法详解