深入面向对象——继承

Posted himurayaiba

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了深入面向对象——继承相关的知识,希望对你有一定的参考价值。

一、题目

编写一个应用程序,创建一个矩形类,类中具有长、宽两个成员变量和求周长的方法。 再创建一个矩形类的子类——正方形类, 类中定义求面积方法、重写求周长的方法。在主类中,输入一个正方形边长,创建正方形对象,求正方形的面积和周长。(注意:所有类均在一个包中)

二、代码

1.Rectiangle.java

package Eleventh;

/*成员变量a与b来定义矩形类的长和宽
 * 方法计算周长
 */

public class Rectiangle {
    double a;                                        
    double b;

    public double getA() {
        return a;
    }

    public void setA(double a) {
        this.a = a;
    }

    public double getB() {
        return b;
    }

    public void setB(double b) {
        this.b = b;
    }

    public double getLength() {
        return (a+b)*2;
    }
}

2.Square.java

package Eleventh;

/*Square继承Rectiangle类
 * getArea方法计算面积
 * getLength方法重写
 */

public class Square extends Rectiangle {

    public double getArea(double a) {
        return a*a;
    }    
    
    public double getLength(double a) {
        return (a+a)*2;
    }
    
}

3.Main.java

package Eleventh;

/*创建对象并输出结果
 */

import java.util.Scanner;

public class Main {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Square sq=new Square();
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入正方形的边长:");
        double a=sc.nextDouble();
        System.out.println("正方形的面积是"+sq.getArea(a));    
        System.out.println("正方形的周长是"+sq.getLength(a));     
    }

}

三、运行结果

技术图片

以上是关于深入面向对象——继承的主要内容,如果未能解决你的问题,请参考以下文章

Java基础 | 深入理解在语言中引入“继承”的概念

py16 面向对象深入

深入理解Java中的组合和继承

Java基础1:深入理解Java面向对象三大特性

Java基础1:深入理解Java面向对象三大特性

深入理解Java面向对象三大特性 封装 继承 多态