亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

父子類之間常見的問題

標簽:
Java

1 多态

父类类型 x = new 子类类型();
比如:
Thread x = new MyThread();

x.start();//子类属性不能访问到,父子类之间的属性 没有重写关系

方法
比如 class MyThread extends Thread{}
其中MyThread是子类 Thread是父类

a,父类特有的可以访问(Thread)
b,子类中重写的方法可以访问(MyThread)
c,子类中特有的不能访问(MyThread)

为了更好的加深理解,下面写出一段代码关于父子类代码之间的分析:

package com.free;

public class Test1 {       
    public static void main(String[] args) {  //main方法为入口       
         Animal x = new Tiger(); //创造一个Tiger类对象并赋值给 x 
         System.out.println
            ("(1)x.news is " + x.news);//调用到父类Animal中的new方法

         System.out.println
            ("(2)((Tiger)x).news is " //调用到父类Animal中的Tiger 里面的new方法
                + ((Tiger)x).news);
         System.out.println//调用到父类Animal中的smile方法
            ("(3)x.smile() is " + x.smile());     
         System.out.println//调用到父类Animal中的Tiger 里面的smile方法
            ("(4)((Tiger)x).smile() is " + 
                    ((Tiger)x).smile());//tiger 里面的smile方法
         System.out.println
            ("(5)x.getNews() is " + 
                    x.getNews());     
         System.out.println
            ("(6)x.getMessage() is " + 
                    x.getMessage());     
     }  
}    
class Animal {    
       public String news = 
               "Animal's news";      
       public String message = 
               "Animal's message";        
       public static String smile() {         
         return "smile from Animal";     
       }         
       public String getNews() {        
         return news;    
       }         
       public String getMessage(){ //这个父类的方法没有被重写
         return this.message;  //调用本父类Animal中的message方法
       }   
}    
class Tiger extends Animal {    

       public String news = //子类中特有的定义属性
               "Tiger's news";   
       public String message = 
                  "Tiger's message";   
       public static String smile() {       
         return "smile from Tiger";       
       }          
       public String getNews() { //继承父类,但是父类中的那个方法没有被重写,所以也会把父类的那个也继承下 
             return this.news;     //调用Tiger这个子类的getNews的方法   
       }  
}

以下为输出的结果:

(1)x.news is Animal's news
(2)((Tiger)x).news is Tiger's news
(3)x.smile() is smile from Animal
(4)((Tiger)x).smile() is smile from Tiger
(5)x.getNews() is Tiger's news
(6)x.getMessage() is Animal's message

點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消