• 多态初步认识


    首先创建父类,因为BYD和BMW同输入汽车,有共同的属性和方法
    1
    public class Car { 2 int price; 3 String type; 4 String color; 5 public Car() { 6 super(); 7 } 8 public Car(int price, String type, String color) { 9 super(); 10 this.price = price; 11 this.type = type; 12 this.color = color; 13 } 14 15 public void show(){ 16 System.out.println("I can run!"); 17 } 18 }
    创建BYD子类,并重写方法
    1
    public class BYD extends Car { 2 3 public BYD() { 4 super(); 5 } 6 7 public BYD(int price, String type, String color) { 8 super(price, type, color); 9 } 10 11 public void show(){ 12 System.out.println("BYD"); 13 System.out.println("价格"+price); 14 System.out.println("型号"+type); 15 System.out.println("颜色"+color); 16 } 17 }
     1 public class BMW extends Car {
     2     
     3     public BMW() {
     4         super();
     5     }
     6 
     7     public BMW(int price, String type, String color) {
     8         super(price, type, color);
     9     }
    10 
    11     public void show(){
    12         System.out.println("BMW");
    13         System.out.println("价格"+price);
    14         System.out.println("型号"+type);
    15         System.out.println("颜色"+color);
    16     }
    17 }
    静态和非静态的问题也要注意,到底是谁调用
    1
    public class Driver { 2 static String name; 3 4 public Driver(String sex) { 5 this.name = name; 6 } 7 public Driver() { 8 } 9 /* 10 * 创建方法 11 */ 12 public static void drive(Car A){//static? 13 System.out.println(name+"Let's run!"); 14 A.show(); 15 } 16 17 public static void main(String[] args) { 18 Driver driver=new Driver("张三"); 19 Car byd=new BYD(3000000,"唐","红"); 20 driver.drive(byd);//这样调用可以不是static 21 Car bmw=new BMW(8000000,"x5","黑"); 22 Driver.drive(bmw);//这样调用必须是static 23 } 24 }
  • 相关阅读:
    设计模式
    C++下char/string跟int型转换比较
    function
    流程控制
    运算符
    type
    language
    phpbasic
    html标签集合
    课题六
  • 原文地址:https://www.cnblogs.com/hudada007/p/6714378.html
Copyright © 2020-2023  润新知