您当前的位置: 首页 >  Java

ZhangJiQun&MXP

暂无认证

  • 0浏览

    0关注

    1187博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Java静态内部类

ZhangJiQun&MXP 发布时间:2019-06-11 14:04:17 ,浏览量:0

java static的作用:

1、修饰成员变量

                给变量加上static关键字后,此变量变为全局变量,JVM在加载时会直接将此变量加载到方法区里而不是堆里,无论哪一个方法修改了此变量,此变量就会改变,可以让对象共享属性

                并且,当再次new该类的对象时,static修饰的类成员不会被再次初始化,在程序运行过程中,static只会在第一次new时被初始化,当然final另当别论

2、修饰成员方法

                static修饰成员方法最大的作用,就是可以使用"类名.方法名"的方式操作方法,避免了先要new出对象的繁琐和资源消耗

3、静态代码块:

            当new一个类对象时,static修饰的成员变量首先被初始化,随后是普通成员,最后调用Person类的构造方法完成初始化。也就是说,在创建对象时,static修饰的成员会首先被初始化

                并且,当再次new该类的对象时,static修饰的类成员不会被再次初始化,在程序运行过程中,static只会在第一次new时被初始化

4、静态导包:

                静态导包用法,将类的方法直接导入到当前类中,从而直接使用“方法名”即可调用类方法,更加方便。

5、代码块:

                代码块分为两种种:普通代码块,静态代码块。他们和构造函数的运行顺序如下所示:

                静态块总是最先执行的,第二执行的是普通代码块,第三执行的是构造方法。并且构造块和构造方法在每次new的时候都会创建新的,static方法只会在第一次new时运行

 

 

什么是内部类 大部分时候,类被定义成一个独立的程序单元。在某些情况下,也会把一个类放在另一个类的内部定义,这个定义在其他类内部的类就被称为内部类(有些地方也叫做嵌套类),包含内部类的类也被称为外部类(有些地方也叫做宿主类)

作用?? 更好的封装性 内部类成员可以直接访问外部类的私有数据,因为内部类被当成其外部类成员,但外部类不能访问内部类的实现细节,例如内部类的成员变量 匿名内部类适合用于创建那些仅需要一次使用的类 静态or非静态??

使用static来修饰一个内部类,则这个内部类就属于外部类本身,而不属于外部类的某个对象。称为静态内部类(也可称为类内部类),这样的内部类是类级别的,static关键字的作用是把类的成员变成类相关,而不是实例相关

注意:  1.非静态内部类中不允许定义静态成员  2.外部类的静态成员不可以直接使用非静态内部类  3.静态内部类,不能访问外部类的实例成员,只能访问外部类的类成员  

关注
打赏
1665659684
查看更多评论
立即登录/注册

微信扫码登录

0.0522s