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