【Day17.1】Java继承

 作用:

继承的出现减少了代码冗余,提高了代码的复用性。 

继承的出现,更有利于功能的扩展。

继承的出现让类与类之间产生了关系,提供了多态的前提。

 注意:

不要仅为了获取其他类中某个功能而去继承

子类继承了父类,就继承了父类的方法和属性。

在子类中,可以使用父类中定义的方法和属性,也可以创建新的数据和 方法。

 在Java 中,继承的关键字用的是“extends”,即子类不是父类的子集, 而是对父类的“扩展”。

关于继承的规则:

子类不能直接访问父类中私有的(private)的成员变量和方法。

Java只支持单继承和多层继承,不允许多重继承 

一个子类只能有一个父类 

一个父类可以派生出多个子类
 练习:

根据下图实现类。在CylinderTest类中创建Cylinder类的对象,设置圆 柱的底面半径和高,并输出圆柱的体积。

 圆类:

package KindObject;
//圆
public class Circle {
    double radius;

    public Circle(){
        this.radius=1;
    }
    public Circle(double radius){
        super();
        this.radius=radius;
    }

    public double getRadius() {
        return radius;
    }

    public void setRadius(double radius) {
        this.radius = radius;
    }
    public double findArea(){
        return 3.14*radius*radius;
    }
}

继承圆,圆柱类:

package KindObject;

public class Cylinder extends Circle {
    double length;
    public Cylinder(){
        this.length=1;
    }
    public Cylinder(double radius,double length){
//        super跟this用法相似,指向父类,下一节会讲到
        super(radius);
        this.length=length;
    }

    public double getLength() {
        return length;
    }

    public void setLength(double length) {
        this.length = length;
    }
    public double findVolume(){
        return 3.14*radius*radius*length;
    }
}

测试类:

package KindObject;
//测试类
public class Test {
    public static void main(String[] args) {

        Cylinder ne = new Cylinder(4,5.6);
//        圆的面积
        System.out.println("圆的面积是:"+ne.findArea());
//        圆柱的面积
        System.out.println("圆柱的面积:"+ne.findVolume());
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

「已注销」

老板大气,I am happy

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值