多肽

时间:2016-12-08----10:41:00

抽象类:主要作用----->封装 

    在使用抽象类时需要注意几点:

    1、抽象类不能被实例化(像刚才的动物,实例化是没有任何意义的),实例化的工作应该交由它的子类来完成,它只需要有一个引用即可。

    2、抽象方法必须由子类来进行重写。

    3、如果类中包含抽象方法,该类必须要定义成抽象类,不管是否还包含有其他方法。

    4、抽象类中可以包含具体的方法,当然也可以不包含抽象方法。

    5、子类中的抽象方法不能与父类的抽象方法同名。

    6、abstract不能与final并列修饰同一个类。

    7、abstract 不能与private、static、final或native并列修饰同一个方法。

对多肽的理解

    多肽的三个含义:1)子类都能以父类的身份出现
                              2)子类以父类的身份出现,但是做事情时,还是用自己的方式来实现。
                              3)子类以父类的身份出现时,自己特有的属性和行为将不能被使用。
(来自百度百科)

 
实例:
 1 package SecondWeekSixthDay;
 2 //对多肽的学习
 3 
 4 //抽象类
 5 abstract class Animal {
 6     abstract void eat();//抽象方法
 7     }
 8 
 9 //子类
10 class Cat extends Animal{
11     public void eat(){/*必须继承父类的抽象方法*/
12         System.out.println("猫吃鱼");
13     }
14     public void catchMouse(){/*子类自身独有的方法*/
15         System.out.println("抓老鼠");
16     }
17 }
18 
19 class Dog extends Animal{
20     public void eat(){
21         System.out.println("吃骨头");
22     }
23     public void catchMouse(){
24         System.out.println("看家");
25     }
26 }
27 
28 class Pig extends Animal{
29     public void eat(){
30         System.out.println("睡觉");
31     }
32      void sleep(){
33         System.out.println("睡觉");
34     }
35 }
36 
37 
38 
39 /*相当于测试类*/
40 public class DuoTaiDemo{/*方法体*/
41     public static void main(String[] args){/*main函数入口*/
42         
43         Animal animal=new Cat();/*作用:调用其他类来定义成一个新类*/
44         animal.eat();/*调用这个类的eat方法*/
45         //animal.catchMouse();/*因抽象类没有这个方法,因此无法调用*/
46         //Cat();/*不能使用调用方法。因方法体中不存在Cat方法*/
47         
48         Animal animal2=new Dog();
49         animal2.eat();
50         
51         Animal animal3=new Pig();
52         animal3.eat();
53     }
54 
55 
56 }
 
 
 
原文地址:https://www.cnblogs.com/xuehx/p/6143969.html