本文实例讲述了java中的多态和继承。分享给大家供大家参考,具体如下:

我们知道“多态”和“继承”是分不开的哦!我们先写2个类!

Car类

class Car {
    private String name;
    private double price;
    
    public Car(String name, double price) {
        super();
        this.name = name;
        this.price = price;
    }
 
    public String getName() {
        return name;
    }
    
    public void setName(String name) {
        this.name = name;
    }
    
    public double getPrice() {
        return price;
    }
    
    public void setPrice(double price) {
        this.price = price;
    }
    
    public void printlnName() {
        System.err.println("name:"+getName());
    }
    
}

BMW类 继承了Car类

class BMW extends Car{
    private String color;
    
    public BMW(String name, double price, String color) {
        super(name, price);
        this.color = color;
    }
 
    public String getColor() {
        return color;
    }
 
    public void setColor(String color) {
        this.color = color;
    }
    
}

什么是多态呢?

java中,对象变量是多态的!一个Car变量既可以引用一个Car类对象,也可以引用一个BMW类对象。

也就是可以这样写:

class Test {
 
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Car car = new BMW("bmw320",300000.0,"white");
    
    }
 
}

但是这样写,会产生一个问题,car不能调用BMW中的方法了。

可以看到,不能调用BMW中的方法了。

更多关于java相关内容感兴趣的读者可查看本站专题:《Java面向对象程序设计入门与进阶教程》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总》