这一章节我们来讨论一下内部类。
1.概念
在类的内部创建的类就是内部类。
package com.ray.ch08; public class Test { class Destination { } class Content { } }
上面的Destination和Content就是内部类。
2.为什么需要内部类?
(1)隐藏代码
package com.ray.ch08; import com.ray.ch08.Test.Destination; public class Test { class Destination { } private class Content { } } class Ship { // Content content = new Test().new Content();//error }
我们可以使用private来隐藏某些实现类。
当我们需要调用某个类的内部类时,必须先new 外部类,就像下面的Destination类一样。
package com.ray.ch08; import com.ray.ch08.Test.Destination; public class Test { class Destination { } private class Content { } } class Ship { Destination destination = new Test().new Destination(); // Content content = new Test().new Content();//error }
(2)通过与外部类的通信
package com.ray.ch08; public class Test { private int id = 0; class Destination { private void print() { System.out.println(id);// 这里的id是int com.ray.ch08.Test.id } } private class Content { } }
上面的代码演示了内部类可以改变外部类的属性域,这里可以衍生很多变化,在后面会详细展开。
(3)代码更加优雅
这一点就不用代码演示,因为根据不同的需求要求各不相同。
总结:这一章节主要讲述了内部类的概念与使用的原因。
这一章节就到这里,谢谢。
-----------------------------------
版权声明:本文为博主原创文章,未经博主允许不得转载。
时间: 2024-10-23 08:05:09