代码改变世界

copy 回顾总结:Java中抽象类与抽象方法

2013-10-14 20:32  whiskyS-our  阅读(213)  评论(0编辑  收藏  举报

1.抽象类和抽象方法的声明

2.如何实现抽象类的成员?

3.抽象类与其他类的一些特性问题.

现在总结如下:

 1 abstract class Mt//抽象类的声明要用abstract,只要类体含有抽象方法,该类一定是抽象的. 
 2 { 
 3 abstract int mt_fa();//抽象方法的声明.与其他方法不同,抽象方法要abstract修饰,没有方法体,方法名的小括号后面还要加一个";"号. 
 4 abstract void mt_fb(); 
 5 /*public static void main(String[]args) 
 6 { 
 7 //Mt mt_dx=new Mt();// Mt 是抽象的;不能对其进行实例化 
 8 }*/ 
 9 } 
10 //既然抽象类不能在其类体中进行实例化,那么通过怎样的方式实现父类抽象方法.请看如下代码: 
11 //通过Mt类(父类)的子类对Mt类进行实例化.条件:子类必须覆盖父类所有的抽象方法. 
12 /*class mt_er extends Mt//如果子类没有覆盖父类的抽象方法,子类只能做抽象类. 
13 { 
14 }*/ 
15 abstract class mt_er extends Mt//实现抽象类的抽象方法 
16 {//如果省掉abstract, mt_er类类体必须覆盖抽象类Mt的所有抽象方法. 
17 int mt_fa()//实现父类的抽象方法的途径:对父类的抽象方法进行了覆盖, 
18 { 
19 return 1; 
20 } 
21 void mt_fb(){} 
22 } 

小结]
1).抽象类的声明:        abstract class 类名
2).抽象方法的声明: abstract int mt_fa();
3).抽象类不一定有抽象方法,但是,有抽象方法的类一定是抽象类。
4).如果用非抽象类继承抽象类,那么这个非抽象类必须覆盖自己父类的所有方法.不然会报错.
5).不能在抽象类里实例化对象,不妨你在mt_er类中加一行mt_er s=new mt_er();程序一定会报错.