interface

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

1.所有方法都是抽象的

2.属性有固定的修饰符.

            △成员常量:public static fianl

            △成员函数:public abstract 

            △接口中的成员都是public的

3.接口之间可以多重继承。

4.接口之间是继承关系

5.类和接口之间是实现关系。

6.面向接口编程降低耦合度.


抽象类

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

1.abstract class

2.抽象方法所在的类必须抽象类。

3.抽象类可以没有抽象方法,有抽象方法的一定是抽象类。

        

        Lips:接口与抽象类

        共性:都是不断抽取出来的抽象(abstract)概念。

        区别:抽象类体现继承关系,一个类只能够单一继承。

                  接口体现的是实现关系,一个类可以实现多个接口。

                  抽象类可以定义非抽象的方法,供子类使用。

                  接口的方法都是抽象的方法,接口中的成员都有固定的修饰(public)。


适配器模式

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

如果接口中的方法较多,而使用接口的时候却只关心其中的一个或者几个方法(关心的方法较少),

如果采用常规手段,就需要对每个方法都加以实现。可以创建一个类型来实现接口,对不关心                 的方法进行。

空实现,对关心的方法保持不变。定义的新类继承抽象类后,将所关心的方法加以实现即可。

此种模式就称为适配器模式。常用于UI设计中的按钮点击事件的处理中。


多态

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

某一类失误的多种存在形态。

对继承的类来讲,使用父类类型引用子类的对象。

对于接口来说,可以使用接口引用实现了该接口的类所创建的对象。

类成员

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

1.成员变量

2.成员函数

3.构造函数

4.构造代码块 

        内部类:

        △内部类可以直接访问外部类中的成员,包括私有成员。

        △外部类要访问内部类的成员必须要建立内部类的对象。

        关于内部类的位置:

        1.内部类定义在成员位置上

                ①可以被 private static成员修饰符修饰

                ②被static修饰的内部类只能访问外部类中的静态成员(重要)换句话说静态方法只能访问                        静态成员。

        2.内部内定义在局部位置上(定义在方法里面)

                ①也可以直接访问外部类的成员

                ②同时可以访问所在局部中的局部变量,但是必须是被Final修饰的(不能再被修改)。

        匿名内部类:

        1.内部类的简写方法。

        2.前提:内部类可以继承或者实现一个外部接口。

        3.基本格式为:

                new 外部类名或者接口名{覆盖类或者接口中的代码(也可以自定义内容)}

                简单的说就是建立一个带内容的外部类或者接口的子类匿名对象。