Java 类的继承

目录

题目

1.新建Triangle.java程序:定义图形类(Shape)的子类三角形类(Triangle),分别计算其面积及周长。

提示:三角形面积S,三条边为a、b、c

                p=((a+b+c)/2) 

                S=sqrt[p(p-a)(p-b)(p-c)]

2.新建Rectangle.java程序:定义图形类(Shape)的子类矩形类(Rectangle),分别计算其面积及周长。

3.新建Circle.java程序:定义图形类(Shape)的子类圆形类(Circle),分别计算其面积及周长。

4.新建Square.java程序:定义矩形类(Rectangle)的子类正方形类(Square),分别计算其面积及周长。提示:请巧妙利用其父类矩形的变量和方法。

代码

1.Shape.java

2.Triangle.java

3.Rectangle.java

4.Circle.java

5.Square.java

6.Test.java

运行结果


题目

1.新建Triangle.java程序:
定义图形类(Shape)的子类三角形类(Triangle),分别计算其面积及周长。

提示:三角形面积S,三条边为a、b、c
p=((a+b+c)/2)
S=sqrt[p(p-a)(p-b)(p-c)]


2.新建Rectangle.java程序:
定义图形类(Shape)的子类矩形类(Rectangle),分别计算其面积及周长。

3.新建Circle.java程序:
定义图形类(Shape)的子类圆形类(Circle),分别计算其面积及周长。


4.新建Square.java程序
定义矩形类(Rectangle)的子类正方形类(Square),分别计算其面积及周长。提示:请巧妙利用其父类矩形的变量和方法。

代码

1.Shape.java

package item11.example;

public class Shape {	

    public double length(){
		return 0;
    }
    
    public double area() {
        return 0;
    }
}

2.Triangle.java

package item11.example;

public class Triangle extends Shape {

	private double a;
    private double b;
    private double c;
    
    public Triangle(double a,double b,double c) {
        super();
        this.a=a;
        this.b=b;
        this.c=c;
    }

    public double length() {
        return a+b+c;
    }

    public double area() {
        double p= (a+b+c)/2;
        return Math.sqrt(p*(p-a)*(p-b)*(p-c));
    }

    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 getC() {
        return c;
    }

    public void setC(double c) {
        this.c = c;
    }
}

3.Rectangle.java

package item11.example;

public class Rectangle extends Shape {
	
	private double width;
    private double height;

    public Rectangle(double height,double width) {
        super();
        this.height=height;
        this.width=width;
    }

    public double length() {
        return 2*(width+height);
    }

    public double area() {
        return width*height;
    }

    public double differ() {
        return Math.abs(height-width);
    }
    
    public double getWidth() {
        return width;
    }

    public void setWidth(double width) {
        this.width = width;
    }

    public double getHeight() {
        return height;
    }

    public void setHeight(double height) {
        this.height = height;
    }

}

4.Circle.java

package item11.example;

public class Circle extends Shape {
	
	private double radius;
	
	public Circle(double radius) {
		super();
		this.radius = radius;
	}
	
	public double length() {
        return 3.14*2*radius;
    }

    public double area() {
        return 3.14*radius*radius;
    }
}

5.Square.java

package item11.example;

public class Square extends Rectangle {
	
	public double edge;
	
	public Square(double edge) {
		super(edge,edge);
		this.edge = edge;
	}
 
    public double getEdge() {
        return edge;
    }
 
    public void setEdge(double edge) {
        this.edge = edge;     
    }
}

6.Test.java

package item11.example;

public class Test {

	public static void main(String[] args) {
		
		Shape rectangle  = new Rectangle(5,10);
		Shape square = new Square(3);
		Shape triangle = new Triangle(3, 4, 5);
		Shape circle = new Circle(2);

		System.out.println("矩形:"+"周长"+rectangle.length()+"\t面积"+rectangle.area());
		System.out.println("正方形:"+"周长"+square.length()+"\t面积"+square.area());
		System.out.println("三角形:"+"周长"+triangle.length()+"\t面积"+triangle.area());
		System.out.println("圆形:"+"周长"+circle.length()+"\t面积"+circle.area());
	}
}

运行结果

  • 6
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值