Board logo

標題: 繼承 (三) [打印本頁]

作者: tonyh    時間: 2015-12-26 17:31     標題: 繼承 (三)

本帖最後由 tonyh 於 2016-1-9 11:59 編輯



範例程式碼中, 第36行, 40行, 42~47行, 與60~65行, 為子類別中新添加的特性.
而第48~51行, 為在子類別中覆寫(override)自父類別繼承下來的方法.
  1. public class ch74
  2. {
  3.     public static void main(String args[])
  4.     {
  5.         Dog d1=new Dog("憨憨",2,1.28,"棕色");
  6.         d1.showProfile();
  7.         d1.makeSound(2);
  8.         Dog d2=new Dog("球球",1,1.35,"白色");
  9.         d2.showProfile();
  10.         d2.makeSound(3);
  11.         Cat c1=new Cat("咪咪",3,0.95);
  12.         c1.showProfile();
  13.         c1.makeSound(5);
  14.     }
  15. }

  16. class Animal
  17. {
  18.     String name;
  19.     int age;
  20.     double w;
  21.     Animal(String name, int age, double w)
  22.     {
  23.         this.name=name;
  24.         this.age=age;
  25.         this.w=w;
  26.     }
  27.     void showProfile()
  28.     {
  29.         System.out.println(name+"今年"+age+"歲,體重"+w+"公斤.");
  30.     }
  31. }

  32. class Dog extends Animal
  33. {
  34.     String color;
  35.     Dog(String name, int age, double w, String color)
  36.     {
  37.         super(name, age, w);
  38.         this.color=color;
  39.     }
  40.     void makeSound(int x)
  41.     {
  42.         for(int i=0; i<x; i++)
  43.             System.out.print("汪~");
  44.         System.out.println();
  45.     }
  46.     void showProfile()
  47.     {
  48.         System.out.println(name+"今年"+age+"歲,體重"+w+"公斤,毛色為"+color+".");
  49.     }
  50. }

  51. class Cat extends Animal
  52. {
  53.     Cat(String name, int age, double w)
  54.     {
  55.         super(name, age, w);
  56.     }
  57.     void makeSound(int x)
  58.     {
  59.         for(int i=0; i<x; i++)
  60.             System.out.print("喵~");
  61.         System.out.println();
  62.     }
  63. }
複製代碼

作者: 李允軒    時間: 2015-12-26 17:40

  1. [code]
  2. public class Ch74 {

  3.         public static void main(String[] args) {
  4.                 Dog d1=new Dog("憨憨",2,1.28,"棕色");
  5.                 d1.showProfile();
  6.                 d1.makeSound(2);
  7.                 Dog d2=new Dog("球球",1,1.35,"白色");
  8.                 d2.showProfile();
  9.                 d1.makeSound(3);
  10.                 Cat c1=new Cat("咪咪",3,0.95);
  11.                 c1.showProfile();
  12.                 c1.makeSound(5);
  13.         }

  14. }

  15. class Animal{
  16.         String name;
  17.         int age;
  18.         double weight;
  19.         Animal(String name,int age,Double weight){
  20.                 this.name=name;
  21.                 this.age=age;
  22.                 this.weight=weight;
  23.         }
  24.         void showProfile(){
  25.                 System.out.println(name+"今年"+age+"歲,體重"+weight+"公斤。");
  26.         }
  27. }

  28. class Dog extends Animal{
  29.         String color;
  30.         Dog(String name,int age,Double weight,String color){
  31.                 super(name,age,weight);
  32.                 this.color=color;
  33.         }
  34.         void makeSound(int x){
  35.                 for(int i=0; i<x; i++)
  36.                         System.out.print("汪~");
  37.                 System.out.println();
  38.         }
  39.         void showProfile(){
  40.                 System.out.println(name+"今年"+age+"歲,體重"+weight+"公斤,毛色為"+color);
  41.         }
  42. }

  43. class Cat extends Animal{
  44.         Cat(String name,int age,Double weight){
  45.                 super(name,age,weight);
  46.         }
  47.         void makeSound(int x){
  48.                 for(int i=0; i<x; i++)
  49.                         System.out.print("喵~");
  50.                 System.out.println();
  51.         }
  52. }
複製代碼
[/code]
作者: 張峻瑋    時間: 2015-12-26 17:41

  1. public class ch74
  2. {
  3.     public static void main(String args[]){
  4.         Dog d1=new Dog("憨憨",2,1.28,"棕色");
  5.         d1.showProfile();
  6.         d1.makeSound(50);
  7.         Dog d2=new Dog("球球",1,1.35,"白色");
  8.         d2.showProfile();
  9.         d2.makeSound(20);
  10.         Cat c1=new Cat("咪咪",3,0.95);
  11.         c1.showProfile();
  12.         c1.makeSound(100);
  13.     }
  14. }
  15. class Animal
  16. {
  17.     String name;
  18.     int age;
  19.     double w;
  20.     Animal(String name,int age,double w)
  21.     {
  22.         this.name=name;
  23.         this.age=age;
  24.         this.w=w;
  25.     }
  26.     void showProfile()
  27.     {
  28.         System.out.println(name+"今年"+age+"歲,體重"+w+"公斤.");
  29.     }
  30. }
  31. class Dog extends Animal
  32. {
  33.     String color;
  34.     Dog(String name,int age,double w,String color)
  35.     {
  36.         super(name,age,w);
  37.         this.color=color;
  38.     }
  39.     void makeSound(int x)
  40.     {
  41.         for(int i=0;i<x;i++)
  42.             System.out.print("汪~");
  43.         System.out.println();
  44.     }
  45.     void showProfile()
  46.     {
  47.         System.out.println(name+"今年"+age+"歲,體重"+w+"公斤,毛色為"+color+".");
  48.     }
  49. }
  50. class Cat extends Animal
  51. {
  52.     Cat(String name,int age,double w)
  53.     {
  54.         super(name,age,w);
  55.     }
  56.     void makeSound(int x)
  57.     {
  58.         for(int i=0;i<x;i++)
  59.             System.out.print("喵~");
  60.         System.out.println();
  61.     }
  62. }
複製代碼

作者: 劉得恩    時間: 2015-12-26 17:42

  1. class Ch74
  2. {
  3.   public static void main(String args[])
  4.   {
  5.         Dog d1=new Dog("5643545345",-12342132,2e-10,""),d2=new Dog("A",200,2.434e-30/0.0,"d");
  6.         d1.showProfile();  d1.makeSound(1);
  7.         d2.showProfile();       d2.makeSound(10);
  8.         Cat c=new Cat("€",-2,0.000000000001);
  9.          c.showProfile();   c.makeSound(2000) ;
  10.   }
  11. }
  12. class Animal
  13. {
  14.   String name;
  15.   int age;
  16.   double w;
  17.   Animal(String n,int a,double w)
  18.   {
  19.     name=n;
  20.     age=a;
  21.     this.w=w;
  22.   }
  23.   void showProfile()
  24.   {
  25.     System.out.println(name+"今年"+age+"歲,體重"+w+"公斤");
  26.   }
  27. }
  28. class Dog  extends Animal
  29. {
  30.   String color;
  31.   Dog(String n,int a,double w,String c)
  32.   {
  33.     super(n, a, w)  ;
  34.     color=c;
  35.   }
  36.   void makeSound(int x)
  37.   {
  38.     for(int i=0;i<x;i++)
  39.     {
  40.       System.out.print("汪~");
  41.     }
  42.     System.out.println();
  43.   }
  44.   void showProfile()
  45.   {
  46.     super.showProfile();
  47.     System.out.println("毛色為"+color);
  48.   }
  49. }

  50. class Cat    extends Animal
  51. {
  52.   Cat(String n,int a,double w )
  53.   {
  54.     super(n, a, w)  ;
  55.   }
  56.   void makeSound(int x)
  57.   {
  58.     for(int i=0;i<x;i++)
  59.     {
  60.       System.out.print("喵~");
  61.     }
  62.     System.out.println();
  63.   }
  64. }
複製代碼

作者: 林宇翔    時間: 2015-12-26 17:46

  1. [code]public class CH72
  2. {
  3.     public static void main(String args[])
  4.     {
  5.         Dog d1=new Dog("憨憨",2,1.28,"棕色");
  6.         d1.showProfile();
  7.         d1.makeSound(2);
  8.         Dog d2=new Dog("球球",1,1.35,"白色");
  9.         d2.showProfile();
  10.         d2.makeSound(3);
  11.         Cat c1=new Cat("咪咪",3,0.95);
  12.         c1.showProfile();
  13.         c1.makeSound(5);
  14.     }
  15. }

  16. class Animal
  17. {
  18.     String name;
  19.     int age;
  20.     double w;
  21.     Animal(String name, int age, double w)
  22.     {
  23.         this.name=name;
  24.         this.age=age;
  25.         this.w=w;
  26.     }
  27.     void showProfile()
  28.     {
  29.         System.out.println(name+"今年"+age+"歲,體重"+w+"公斤.");
  30.     }
  31. }

  32. class Dog extends Animal
  33. {
  34.     String color;
  35.     Dog(String name, int age, double w, String color)
  36.     {
  37.         super(name, age, w);
  38.         this.color=color;
  39.     }
  40.     void makeSound(int x)
  41.     {
  42.         for(int i=0; i<x; i++)
  43.             System.out.print("汪~");
  44.         System.out.println();
  45.     }
  46.     void showProfile()
  47.     {
  48.         System.out.println(name+"今年"+age+"歲,體重"+w+"公斤,毛色為"+color+".");
  49.     }
  50. }

  51. class Cat extends Animal
  52. {
  53.     Cat(String name, int age, double w)
  54.     {
  55.         super(name, age, w);
  56.     }
  57.     void makeSound(int x)
  58.     {
  59.         for(int i=0; i<x; i++)
  60.             System.out.print("喵~");
  61.         System.out.println();
  62.     }
  63. }
複製代碼
[/code]




歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://seed.istak.org.tw/) Powered by Discuz! 7.2