Java static关键字
来源:互联网 发布:射手 mac 编辑:程序博客网 时间:2024/05/18 00:49
1. 静态成员
当方法的执行与对象完全无关时,不需要创建对象,完全可以要求类自身来运行这个方法。
特殊情况:如记录某个类的所有对象的个数等关于这个类对象的信息,必须要一个依赖于类的而不是一览与对象的变量来记录此信息,否则将不能解决问题。
2. 静态成员的访问
1. 静态方法访问非静态成员
2 非静态方法访问静态成员
3. 静态最终成员变量初始化
1. 声明的同时进行初始化
2. 静态语句块中那个初始化
4. 若接口中的方法被声明为静态,那么意味着接口中的方法无法被重写,因此不允许由于修饰接口函数。
5.静态工厂
6.静态方法中的局部内部类
若局部内部类位于静态方法中,则只能访问外部静态类的成员。
7.静态内部类
语法:
class <outer>{
static class <inner>{
//blabla...
}
//blabla..
}
创建对象:
outter.inner name = new outter.inner(...);
静态内部类也称内部嵌套类,非内部静态类应该与外部类的对象成员的共享关系,其实外部类对象组成的一部分,静态内部类其实已经脱离了外部类的控制,创建其对象时不需要外部类对象的存在,其实质只是一个放置在别的类中的普通类,static说明其创建对象时不依赖外部对象的存在。
当方法的执行与对象完全无关时,不需要创建对象,完全可以要求类自身来运行这个方法。
特殊情况:如记录某个类的所有对象的个数等关于这个类对象的信息,必须要一个依赖于类的而不是一览与对象的变量来记录此信息,否则将不能解决问题。
2. 静态成员的访问
1. 静态方法访问非静态成员
点击(此处)折叠或打开
- public class Console {
- static int x=100;
- public static void main(String[] args) {
- System.out.println(x);
- }
- }
2 非静态方法访问静态成员
点击(此处)折叠或打开
- public class Console {
- static int x=100;
- public void showStatic() {
- System.out.println(Console.x);
- }
- public static void main(String[] args) {
- Console console = new Console();
- console.showStatic();
- }
- }
3. 静态最终成员变量初始化
1. 声明的同时进行初始化
2. 静态语句块中那个初始化
点击(此处)折叠或打开
- public class Console {
- public static final int x1 = 100;
- public static final int x2;
- static{
- x2 = 100;
- }
- public static void main(String[] args) {
- System.out.println(Console.x1);
- System.out.println(Console.x2);
- }
- }
5.静态工厂
点击(此处)折叠或打开
- class Animal{
- private Animal(){
- //私有构造器
- }
- public static Animal getAnimal(){
- return Animal();//通过调用getAnimal()即可,称之为静态工厂
- }
- }
若局部内部类位于静态方法中,则只能访问外部静态类的成员。
点击(此处)折叠或打开
- package wyf.jc;
- //外部类
- class Outter
- {
- //定义普通成员变量,此处必须为static,否则报错。
- static int x=100;
- //定义静态方法
- public static void getInner()
- {
- //定义内部类
- class Inner
- {
- //定义内部类方法show
- public void show()
- {
- //打印输出,并调用该方法中的局部变量
- System.out.println("访问方法中的局部变量,x = "+x);
- }
- }
- Inner i=new Inner();
- i.show();
- }
- }
- //主类
- public class Sample15_9
- {
- public static void main(String[] args)
- {
- //调用静态方法
- Outter.getInner();
- }
- }
7.静态内部类
语法:
class <outer>{
static class <inner>{
//blabla...
}
//blabla..
}
创建对象:
outter.inner name = new outter.inner(...);
静态内部类也称内部嵌套类,非内部静态类应该与外部类的对象成员的共享关系,其实外部类对象组成的一部分,静态内部类其实已经脱离了外部类的控制,创建其对象时不需要外部类对象的存在,其实质只是一个放置在别的类中的普通类,static说明其创建对象时不依赖外部对象的存在。
0
上一篇:Java 栈&&队列
下一篇:Java final修饰符
相关热门文章
- JDK1.6官方下载_JDK6官方下载_...
- MyEclipse6.5下载及注册码...
- Eclipse+MyEclipse的配置
- Eclipse 插件安装、升级和卸载...
- 最新版SWT Designer 6.0 安装,...
- ChinaUnix & ITPUB社区12周年...
- ssh连接出现以下提示,求解...
- 如何扩展MYSQL
- 准备做一个大型门户,用户什么...
- gbk or utf8
给主人留下些什么吧!~~
评论热议
- Java this关键字,static关键字
- Java static关键字,final关键字
- JAVA STATIC 关键字
- Java中的static关键字
- JAVA中的static关键字
- Java 中 static 关键字
- java static关键字
- java static关键字
- Java关键字final、static
- java中static关键字
- Java中static关键字
- java中static关键字
- java中关键字:static
- JAVA中的static关键字
- java中的static关键字
- java关键字 static
- java中的static关键字
- java关键字static
- Java String
- Java正则表达式
- Java 集合类框架
- Java 自定义Sorted集合
- Java 栈&&队列
- Java static关键字
- Java final修饰符
- The Humble Programmer
- Web图片格式笔记
- bufferedWriter
- TF_IDF
- css的padding和margin属性
- java解析xml文件(一)
- 在C#代码中应用Log4Net系列教程(附源代码)
原创粉丝点击
热门IT博客
热门问题
老师的惩罚
人脸识别
我在镇武司摸鱼那些年
重生之率土为王
我在大康的咸鱼生活
盘龙之生命进化
天生仙种
凡人之先天五行
春回大明朝
姑娘不必设防,我是瞎子
九鼎下落
九鼎国际城
九鼎狂尊
九鼎减震器
九鼎炼神法
力扛九鼎
一语九鼎
九鼎网址
九鼎新才
九鼎转生
九鼎互动
九鼎之尊
片言九鼎
九鼎之
禹铸九鼎
九鼎新材股吧
九鼎记全文阅读
九鼎新材股票
九鼎记txt全集下载
大理九鼎公棚赛鸽中心
九鼎赛鸽中心
九鼎公棚秋棚
一言九鼎意思
002201九鼎新材股吧
大理九鼎赛鸽中心
大理九鼎公棚
一言九鼎电视全集高清播放
九鼎奇文韩三千
002201九鼎新材
九鼎赛鸽中心秋棚
九鼎书斋叶辰
云南九鼎赛鸽中心
一言九鼎剧情分集介绍
昆吾九鼎投资
一言九鼎打一生肖
九鼎记txt下载
九鼎记完本txt免费下载
海口九鼎水郡
九鼎记 我吃西红柿
九鼎投资集团
富田九鼎世家