码迷,mamicode.com
首页 > 编程语言 > 详细

Java基础(10) - 内部类

时间:2019-09-07 01:27:56      阅读:81      评论:0      收藏:0      [点我收藏+]

标签:元素   多重   shu   tps   权限   存在   nsis   一个   依赖   

存在意义
1、内部类可以很好的实现隐藏
一般的非内部类,是不允许有private与protected权限的,但内部类可以

2、内部类拥有外部类所有元素的访问权限 ,private修饰也能访问。

3、可实现多重继承 ,让多个内部类分别继承多个其他类,使外部类可以同时获取多个其他类的属性。

4、可以避免修改接口而实现同一个类中两种同名方法的调用。(外部类继承,让内部类实现接口)
参考:https://www.jianshu.com/p/f0fdea957792

静态、非静态内部类的区别
1、声明
静态内部类中可以声明静态成员变量和静态方法;非静态内部类不能。

2、访问
静态内部类只能访问外部类的静态成员变量和静态方法(静态内部类不持有外部类引用);非静态内部类可以访问外部类的所有成员和方法。

3、创建
声明静态内部类时,不依赖于外部类对象;声明非静态内部类时,依赖于外部类对象。
//假设类A有静态内部类B和非静态内部类C,创建B和C的区别为:?
A.B b=new A.B();?//静态内部类
A a=new A();?
A.C c=a.new C(); //非静态内部类

参考:https://www.cnblogs.com/insist-bin/p/11137675.html

Java基础(10) - 内部类

标签:元素   多重   shu   tps   权限   存在   nsis   一个   依赖   

原文地址:https://blog.51cto.com/4397014/2436227

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!