首页 > 代码库 > JAVA 之 多态 抽象 接口

JAVA 之 多态 抽象 接口

转载:http://www.cnblogs.com/hellokitty1/p/4436280.html

一:多态 

1:多态   一个对象有多种形式的能力

2:步骤

      1编写父类派生子类

      2子类重写父类方法

      3用父类的数据类型引用子类对象

3:静态多态的实现方式就是方法重载

4:动态多态的实现方式就是重写父类中同名成员方法

5:使用instanceof关键字判断对象的真正类型

    语句形式   引用instanceof 类名

 eg;Empe=new Hourly();

        if(einstanceofHourly){

          Hourlyx=(Hourly) e;// 强制转换一个Hourly类型

      }

6:多态的应用

1多态参数

2异构集合 不是同一类型,但是有共同父类的数据集合

 

二:抽象

 1:抽象类       是不能实例化的类,需要被继承,由子类来实现。

2:抽象方法     只有方法签名 没有方法主体

                            出现在抽象类中

                           在子类中必须被重写 除非子类是抽象类

三 接口

1 :接口  所有的方法都是抽象的,所有的方法都不提供具体的实现

2:接口与类之间的几个不同之处

     1 接口不能被实例化

    2 接口不包含任何构造器

    3 接口中所有的方法都是抽象的

    4接口中不能包含实例成员变量 (要同时声明为static  final)

    5 接口不能被一个类继承,只能被一个类实现

    6 一个接口能够继承多个接口

 

3:接口中抽象方法声明三种

     1   public abstract void paint();

    2   public void paint();

    3   void paint ();

4:继承多个接口   用逗号隔开

 

5:接口与抽象类的区别  

接口中只能包含抽象方法       抽象类中可以含有普通方法

接口中不能定义静态方法       抽象类可以定义静态方法

接口中只能定义静态常量属性  抽象类静态 普通的都可以                     

接口中不含初始化块                  抽象类可以含有

JAVA 之 多态 抽象 接口