首頁 >Java >java教程 >Java 實例 - 方法覆蓋

Java 實例 - 方法覆蓋

黄舟
黄舟原創
2017-02-16 10:17:111369瀏覽

前面章節中我們已經學習了 Java 方法的重寫,本文我們來看看 Java 方法所覆寫的實作。

方法重載與方法覆蓋區別如下:

  • 方法重載(Overloading):如果有兩個方法的方法名稱相同,但參數不一致,哪麼可以說一個方法是另一個方法的重載。

  • 方法覆蓋(Overriding):如果在子類別中定義一個方法,其名稱、返回類型及參數簽名正好與父類中某個方法的名稱、返回類型及參數簽名相匹配,那麼可以說,子類別的方法覆蓋了父類別的方法。

以下實例示範了Java 方法覆蓋(Overriding)程式碼的實作:

/*
 author by w3cschool.cc
 Findareas.java
 */public class Findareas{
   public static void main (String []agrs){
      Figure f= new Figure(10 , 10);
      Rectangle r= new Rectangle(9 , 5);
      Figure figref;
      figref=f;
      System.out.println("Area is :"+figref.area());
      figref=r;
      System.out.println("Area is :"+figref.area());
   }}class Figure{
   double dim1;
   double dim2;
   Figure(double a , double b) {
      dim1=a;
      dim2=b;
   }
   Double area() {
      System.out.println("Inside area for figure.");
      return(dim1*dim2);
   }}class Rectangle extends Figure {
   Rectangle(double a, double b) {
      super(a ,b);
   }
   Double area() {
      System.out.println("Inside area for rectangle.");
      return(dim1*dim2);
   }}

以上程式碼運行輸出結果為:

Inside area for figure.
Area is :100.0
Inside area for rectangle.
Area is :45.0

 以上就是Java 實例- 方法覆蓋的內容,更多中文相關網相關請注意PHP (www.php.cn)!


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn