静态内部类和非静态内部类的区别
答案:1 悬赏:20 手机版
解决时间 2021-11-28 03:26
- 提问者网友:做自己de王妃
- 2021-11-27 13:07
静态内部类和非静态内部类的区别
最佳答案
- 五星知识达人网友:酒醒三更
- 2021-11-27 13:52
静态内部类和非静态内部类的区别
2017-10-25 程双志卓... 转自 Lib4Kevin
修改
微信分享:
区别:
1、静态内部类可以有静态成员(方法,属性),而非静态内部类则不能有静态成员(方法,属性)。
2、静态内部类只能够访问外部类的静态成员和静态方法,而非静态内部类则可以访问外部类的所有成员(方法,属性)。
3、实例化一个非静态的内部类的方法:
a.先生成一个外部类对象实例
OutClassTest oc1 = new OutClassTest();
b.通过外部类的对象实例生成内部类对象
OutClassTest.InnerClass no_static_inner = oc1.new InnerClass();
4、实例化一个静态内部类的方法:
a.不依赖于外部类的实例,直接实例化内部类对象
OutClassTest.InnerStaticClass inner = new OutClassTest.InnerStaticClass();
5、调用内部静态类的方法或静态变量,通过类名直接调用
OutClassTest.InnerStaticClass.static_value
OutClassTest.InnerStaticClass.getMessage()
2017-10-25 程双志卓... 转自 Lib4Kevin
修改
微信分享:
区别:
1、静态内部类可以有静态成员(方法,属性),而非静态内部类则不能有静态成员(方法,属性)。
2、静态内部类只能够访问外部类的静态成员和静态方法,而非静态内部类则可以访问外部类的所有成员(方法,属性)。
3、实例化一个非静态的内部类的方法:
a.先生成一个外部类对象实例
OutClassTest oc1 = new OutClassTest();
b.通过外部类的对象实例生成内部类对象
OutClassTest.InnerClass no_static_inner = oc1.new InnerClass();
4、实例化一个静态内部类的方法:
a.不依赖于外部类的实例,直接实例化内部类对象
OutClassTest.InnerStaticClass inner = new OutClassTest.InnerStaticClass();
5、调用内部静态类的方法或静态变量,通过类名直接调用
OutClassTest.InnerStaticClass.static_value
OutClassTest.InnerStaticClass.getMessage()
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯