static

 static
1 概念
是java中的一个关键字
用于修饰成员(成员变量、成员方法和成员内部类)

2 特点
可以修饰成员变量、成员方法和成员内部类。
随着类的加载而加载,优先于对象加载
只加载一次,就会一直存在,不再开辟新空间, 直到类消失才一起消失
静态资源也叫做类资源,全局唯一,被全局所有对象共享
可以直接被类名调用
静态只能调用静态,非静态可以随意调用
static不能和this或者super共用,因为有static时可能还没有对象
 

3 内部类方面的补充

a.静态内部类的使用:

java里面static一般用来修饰成员变量或函数。但有一种特殊用法是用static修饰内部类,普通类是不允许声明为静态的,只有内部类才可以。

被static修饰的内部类可以直接作为一个普通类来使用,而不需实例一个外部类(见如下代码):

 public static void main(String[] args) {
12         // 不需要new一个InnerClass
13         new OuterClass.InnerClass();
14     }//这外部类类名调用内部类以创建对象,如同用外部类类名可以直接调用静态变量和方法

需要注意的是当一个内部类没有使用static修饰的时候,是不能直接使用内部类创建对象,须要先使用外部类对象点new内部类对象及(外部类对象.new 内部类())

如果没有用static修饰InnerClass,则只能按如下方式调用:需要先new 一个外部类实例

public static void main(String[] args) {
13         // OutClass需要先生成一个实例,然后再new一个InnerClass();
14         OuterClass oc = new OuterClass();
15         oc.new InnerClass();

b.static不能修饰方法内部类:

1、方法内部类就是定义在外部类的方法中,方法内部类只在该方法内可以用;

2、由于方法内部类不能在外部类的方法以外的地方使用,因此方法内部类不能使用访问控制符和 static 修饰符。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值