第8次作业--继承

题目:

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

源代码

1.Rec.java

package com.lyh;
/**
 * 创建一个矩形类Rec
 * 类中具有长、宽两个成员变量a,b和求周长的方法getC()。
 * @author ASUS
 *
 */
public class Rec {//定义矩形类
	
	double a,b; //定义成员变量长,宽分别为a,b
	public double getC(){//类中定义矩形求周长方法getC()
		return 2*(a+b);
	}

}

2.Squ.java

package com.lyh;
/**
 * 创建一个矩形类的子类——正方形Squ,其继承了Rec类
 * Squ类中定义求面积方法getArea()
 * 重写求周长的方法getC()。
 * @author ASUS
 *
 */
public class Squ extends Rec {//定义正方形类Squ继承矩形类Rec
	public double getArea(){//类中定义正方形求面积方法getArea()
		return a*a;
	}
	
	public double getC(){//类中定义正方形求周长方法getC()
		return 4*a;
	}
	
}

3.Main.java

package com.lyh;
import java.util.*;
/**
 * 在主类中,输入一个正方形边长a,
 * 创建正方形对象s
 * 调用正方形对象s的面积getArea()和周长getC()方法
 * 求出正方形的面积与周长
 * @author ASUS
 *
 */
public class Main { //创建主类Main

	public static void main(String[] args) {
		Squ s = new Squ(); //创建正方形对象s
		Scanner reader = new Scanner(System.in);//创建Scanner类对象reader
		System.out.println("***Please enter the side length of the square:");
		s.a = reader.nextDouble(); //reader接收正方形对象s的边长a的值
		System.out.println("***The area of a square is "+ s.getArea());
		//调用方法s.getArea()求正方形面积
		System.out.println("***The perimeter of the square is "+ s.getC());
		//调用方法s.getC()求正方形周长
	}

}

运行结果

posted @ 2019-09-24 21:07  侯英龙20194669  阅读(204)  评论(0编辑  收藏  举报