2016/1/20 继承作业

2,创建一个父类,在父类中创建三个方法,在子类中覆盖第三个方法,为子类创建一个对象,将它向上转型到基类并调用这个方法。

 1 package Jicheng;
 2 
 3 public class YuYan {
 4     
 5     YuYan(String argus){
 6         System.out.println("  ");
 7     }
 8     YuYan(){
 9         
10     }
11 
12     private String yuyin;
13     private String yuhui;
14     private String yufa;
15     public String getYuyin() {
16         return yuyin;
17     }
18     public void setYuyin(String yuyin) {
19         this.yuyin = yuyin;
20     }
21     public String getYuhui() {
22         return yuhui;
23     }
24     public void setYuhui(String yuhui) {
25         this.yuhui = yuhui;
26     }
27     public String getYufa() {
28         return yufa;
29     }
30     public void setYufa(String yufa) {
31         this.yufa = yufa;
32     }
33     
34     void  listen (){
35         System.out.println("我是父类 语言  听");
36     }
37     void speak(){
38         System.out.println("我是父类 语言  说");
39     }
40     void read(){
41         System.out.println("我是父类 语言  读");
42     }
43     
44 }
 1 package Jicheng;
 2 
 3 public class HanYu extends YuYan{
 4    
 5     
 6     
 7     void write(){//子类中独有的写方法
 8        System.out.println("我是子类 汉语  写");
 9    }
10    void read(){//改写父类中读的方法
11        System.out.println("我是子类 汉语  读");
12    }
13    
14 }
 1 package Jicheng;
 2 
 3 public class TestHanYu {
 4 
 5     /**
 6      * @param args
 7      */
 8     public static void main(String[] args) {
 9         HanYu hantest=new HanYu();
10         
11         
12         
13         hantest.listen();//继承父类中的听方法
14         hantest.speak();//继承父类中的说方法
15         hantest.read();//子类重写了父类中读的方法 输出显示调用的子类方法
16         
17         hantest.write();//调用的子类中的写方法(父类中没有)
18         
19         
20         YuYan  xs=new HanYu();//从汉语类到语言类 向上转型
21         xs.read();// 调用子类中重写的 读的方法
22         //ws.write(); 向上转型时 子类中特有的方法 无法被实例后调用 调用报错
23         HanYu xx=(HanYu) xs; //向下 强制  转型
24         xx.write();//由向上转型,到强制向下转后,可以调用子类中独有的写方法

原文地址:https://www.cnblogs.com/haodayikeshu/p/5144479.html