Java物件導向,繼承,多態

來源:互聯網
上載者:User

標籤:static   []   傳回值   serve   重寫   main   機制   調用   sys   

1,繼承

Java 中通過 extends 關鍵字可以繼承一個類,implements可以繼承多個介面。繼承允許建立等級層次的類。

繼承的機制提高了代碼的複用性,讓類與類之間產生了關係,有了這個關係,才有了多態的特性。

註:Java支援單繼承,但是可以多層繼承。

子類可以擁有父類的非private的方法和屬性,子類可以繼承父類的方法,也可以重寫父類的方法,還可以對父進行拓展。

增加了類之間的聯絡,即提高了耦合。

一般格式為:

class 父類 { }

class 子類 extends 父類 { }

 

Demo1:

 1 package com.hpioneer.Demo; 2  3 public class Test_Extends { 4     public static void main(String[] args) { 5         Zi z = new Zi(); 6         //z.show(); 7     } 8 } 9 class Fu {10     static {11         System.out.println("靜態代碼塊Fu");12     }13 14     {15         System.out.println("構造代碼塊Fu");16     }17 18     public Fu() {19         System.out.println("構造方法Fu");20     }21 }22 23 class Zi extends Fu {24     static {25         System.out.println("靜態代碼塊Zi");26     }27 28     {29         System.out.println("構造代碼塊Zi");30     }31 32     public Zi() {33         System.out.println("構造方法Zi");34     }35 }

Demo2:

super關鍵字可以用來實現對父類成員的訪問,來引用當前對象的父類。this關鍵字用於指向自己。

super可以調用父類的構造方法,方法(和子類相同的,被重寫)

 1 class Animal { 2   void eat() { 3     System.out.println("animal : eat"); 4   } 5 } 6   7 class Dog extends Animal { 8   void eat() { 9     System.out.println("dog : eat");10   }11   void eatTest() {12     this.eat();   // this 調用自己的方法13     super.eat();  // super 調用父類方法14   }15 }16  17 public class Test {18   public static void main(String[] args) {19     Animal a = new Animal();20     a.eat();21     Dog d = new Dog();22     d.eatTest();23   }24 }

2,重載(Override)和重寫(Overload)

重寫是對父類允許的方法的實現重新編寫,傳回值和參數都不能改變。

重載是一個類裡面,方法名相同,參數不同,傳回值類型也可以不同。

 

Java物件導向,繼承,多態

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.