黑马程序员技术交流社区

标题: day10-笔记整理 [打印本页]

作者: 1556455422    时间: 2015-7-27 22:24
标题: day10-笔记整理
01、带包的类的编译和运行
带包编译
格式 : package 包名(全部小写,可以单级包也可以多级包)

一 如果需要带包编译和运行的话从上到下的顺序?
package 包名>>import 导包>>定义类 class

-----------------------------------------------------------------------------------------------------------------
02、不同包下类之间的访问和导包问题

常见问题:
提示:找不到Demo类
解决方案:使用全路径名

提示:Demo类无法访问
解决方案:对类使用public修饰

-----------------------------------------------------------------------------------------------------------------
03、四种权限修饰符的作用

记住:成员变量 private
         成员方法 public

-----------------------------------------------------------------------------------------------------------------
04、修饰符可以修饰哪些内容
                                        类                        成员变量                成员方法                构造方法
private                                Y(内部类)                Y                                        Y                        Y
默认                                Y                                Y                                        Y                        Y
protected                                                        Y                                        Y                        Y
public                                 Y                                Y                                        Y                        Y
abstract                         Y                                                                        Y                               
static                                 Y(内部类)                Y                                        Y
final                                Y                                Y                                        Y

private 修饰内部类:
-----------------------------------------------------------------------------------------------------------------
05、内部类概述

内部类概念:
将一个类定义在另一个类中,那么这个类就可以成为内部类(嵌套类,内置类)

内部类访问特点:
A:内部类可以直接访问外部类的成员,包括私有成员。
B:外部类想要访问内部类的内容,必须创建内部类对象.
-----------------------------------------------------------------------------------------------------------------
06、成员内部类的使用

一 内部类的分类:
A:定义在成员位置的内部类成为成员内部类
B:定义在方法中的类,就叫局部内部类

二 如果想在测试类中,直接使用成员内部类。那么请按照如下格式:
外部类名.内部类名 变量名 = 外部类对象.内部类对象;

-----------------------------------------------------------------------------------------------------------------
07、成员内部类的修饰符(private和static)

成员内部类的修饰符
A: private 修饰是为了考虑安全性
B: static 修饰是为了方便调用
如果成员内部类用 static 修饰那么调用的方式是
外部类名.内部类名 变量名 = new 外部类名.内部类名();

-----------------------------------------------------------------------------------------------------------------
08、局部内部类的使用

注意:局部内部类如果访问方法中的局部变量,那么这个变量必须用final修饰(是为了延长它的生命周期)
-----------------------------------------------------------------------------------------------------------------
09、内部类字节码文件命名规则
-----------------------------------------------------------------------------------------------------------------
10、匿名内部类的使用

一 匿名内部类定义:
没有名字的局部内部类

二 前提条件:
要有一个类,或者抽象类,或者接口(应用比较多的是抽象类和接口)

三 格式:
new 类名或接口名()
{
重写抽象类或接口中的抽象方法
也可以自己定义一些特有的功能
};

解释:通过匿名对象其实就是获取到了一个该接口的子实现类对象

以后遇到匿名内部类的形式是,一个方法的形参位置要求传递一个接口类型的对象.
有一个接口叫 Inter
public void show(Inter i)
{}

public class Test1 {
        public static void main(String[] args){
       
        DogShout(new Dog(){
               
                public void shout(){
                System.out.println("55555555");
                }
        });
        }
       
        public static void DogShout(Dog d){
                d.shout();
        }

}

interface Dog
{
        void shout();
}

-----------------------------------------------------------------------------------------------------------------
11、什么时候使用匿名内部类
所有父类出现的地方完全可以使用子类去替代


-----------------------------------------------------------------------------------------------------------------



作者: CharnLau    时间: 2015-7-27 23:52
太认真了,哥,你该不会是今晚的满分哥吧?




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