关闭

Java抽象类和接口

259人阅读 评论(0) 收藏 举报
分类:

java抽象类

1.只有方法的申明而没有具体方法实现的方法城之为抽象方法,包含抽象方法的类称为抽象类,抽象类中可以有抽象方法也可以有包含有一般的方法;

2.不能创建抽象类的实例;

3.对于超类的抽象方法子类是通过覆盖的形式来实现继承的;

4.抽象类的子类必须实现所有的超类的抽象方法;如果子类没有实现抽象类的所有抽象方法那么子类必须也定义为抽象类;

5.abstract class Shape{

          int r;

          abstract int get();

          abstract int set();

          int add(){return r++;}

}

class Circle extends Shape{

     int get(){..}

     int set(){..}

}


接口

1.java中只支持类的单继承,不支持多重继承,即一个类只能由一个超类;接口就是用来实现类似类的多重继承功能的结构;它的属性是常量,方法也都是抽象方法没有方法体;

2.接口中定义的变量都是静态变量,而且都是最终的静态变量;方法都是抽象方法;

3.如果一个类实现了一个接口,则必须实现接口中的所有方法,方法必须申明为Public类;

4.接口不可以实例化;

5.interface Shape{

   int MAX=5;

   void set();

   void get();}

   class Circle implements Shape{

  public void set(){......}

  public void get(){.....}

}



接口和类的比较

接口和类中的所有方法都是抽象的,而抽象类可以定义一般的方法;

一个类中可以实现多个接口,而智能继承一个抽象父亲;

不相关的类可以实现同一接口

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场