我还是第一次这样用,呵呵,一直不知道这样也行,有点孤陋寡闻了。还得加强学习啊!
运行结果
testOutter
testInner
testInner
总结:
感觉就像一个带了package的类一样,唯一的区别就是实现类可以直接使用,还是方便了很多。
- /**
- * 接口里面嵌套类的使用。
- *
- * @author 赵学庆 java2000.net
- */
- public class T {
- public static void main(String[] args) {
- T1 t1 = new T1();
- t1.test();
- T2 t2 = new T2();
- t2.test();
- }
- }
- class T1 implements MyFace {
- public void test() {
- testOutter();
- // 继承类则简化了路径
- MyTestInner ttt = new MyTestInner();
- ttt.testInner();
- }
- public void testOutter() {
- System.out.println("testOutter");
- }
- }
- class T2 {
- public void test() {
- // 完整路径直接使用
- MyFace.MyTestInner ttt = new MyFace.MyTestInner();
- ttt.testInner();
- }
- }
- interface MyFace {
- public void testOutter();
- // 嵌套类
- public class MyTestInner {
- public void testInner() {
- System.out.println("testInner");
- }
- }
- }
testOutter
testInner
testInner
总结:
感觉就像一个带了package的类一样,唯一的区别就是实现类可以直接使用,还是方便了很多。