黑马程序员技术交流社区

标题: 【路人丶】包,内部类 [打印本页]

作者: 路人丶    时间: 2017-12-10 21:58
标题: 【路人丶】包,内部类
一、包的作用和特点
        作用:分类存放文件,分包管理
        特点:
                a:多级包(.分隔)
                b:不同包下的文件名可以重复
                c:文件的第一行可执行代码
二、不同包之间的访问
        a:写类全名(包名.类名)
        b:导包
三、权限修饰符
                                        同类        同包不同类                不同包(子父类)                不同包(无关系)
        public                        Y                Y                                Y                                        Y
        protected                Y                Y                                Y                                       
        空                                Y                Y                               
        private                        Y               
四、内部类
        public class Test01 {
        public static void main(String[] args) {
                Outer o = new Outer();
                o.method();
                System.out.println("-----------------------");
                Outer.Iner i = new Outer().new Iner();
                i.function();
                System.out.println("----------局部内部类------------");
                new Outer().show();
               
                //匿名内部类
                new SSS() {
                        @Override
                        public void fun() {
                                System.out.println("匿名内部类");
                        }
                };
        }
}

class Outer {
        private int num = 10;
        public void method(){
                num = 15;        //YES
                Iner i = new Iner();
                i.function();
        }
        //局部内部类
        public void show(){
                class Iner {
                        public void show(){
                                System.out.println("局部内部类");
                        }
                }
                //方法中,类外创建对象
                Iner ii = new Iner();
                ii.show();
        }
        //成员内部类
        class Iner {
//                num = 15;   //NO
//                private int num = 20;
                public void function(){
                        num = 66;
                        System.out.println(num);
//                        System.out.println(new Outer().num);
                }
        }
}

interface SSS {
        void fun();
}


作者: 1414225997    时间: 2017-12-11 09:06
继续努力噢
作者: 渝小妹    时间: 2017-12-11 09:18
每天争取都要全部掌握全部吸收哟~~~
作者: 花开的季节    时间: 2017-12-11 17:16
哇,继续努力,继续加油!
作者: 没关系    时间: 2017-12-11 20:07
温故而知新哦    加油
作者: 狸大大    时间: 2017-12-12 14:49
温故而知新    善于总结   加油哦




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2