谁能详细帮我分析一下这个程序呢?谢谢了!!!!!package test.oo.shape;
public class Rectangle extends MyShape
{ private double length;
private double width;
public static final String SIDEERR = "长方形的长和宽必须大于0!"; public Rectangle()
{
init();
} public Rectangle(double a, double b)
{
if ((a <= 0) || (b <= 0))
{
System.err.println(SIDEERR);
init();
}
else
{
this.length = a;
this.width = b;
}
} private void init()
{
this.length = 5;
this.width = 4;
}
public double getGirth()
{
return (this.length + this.width) * 2;
}
public double getArea()
{
return this.length * this.width;
}
public String toString()
{
return "矩形的名字是:" + this.name + ",长为" + this.length + ",宽为" + this.width;
}
public double getLength()
{
return length;
}
public void setLength(double length)
{
if (length > 0)
{
this.length = length;
}
else
{
System.err.println(SIDEERR);
}
}
public double getWidth()
{
return width;
}
public void setWidth(double width)
{
if (width > 0)
{
this.width = width;
}
else
{
System.err.println(SIDEERR);
}
}
public static void main(String[] args)
{
Rectangle test = new Rectangle();
test.setName("myRectangle");
System.out.println( test.toString());
System.out.println("矩形的周长是:" + test.getGirth());
System.out.println("矩形的面积是:" + test.getArea());
}
}
public class Rectangle extends MyShape
{ private double length;
private double width;
public static final String SIDEERR = "长方形的长和宽必须大于0!"; public Rectangle()
{
init();
} public Rectangle(double a, double b)
{
if ((a <= 0) || (b <= 0))
{
System.err.println(SIDEERR);
init();
}
else
{
this.length = a;
this.width = b;
}
} private void init()
{
this.length = 5;
this.width = 4;
}
public double getGirth()
{
return (this.length + this.width) * 2;
}
public double getArea()
{
return this.length * this.width;
}
public String toString()
{
return "矩形的名字是:" + this.name + ",长为" + this.length + ",宽为" + this.width;
}
public double getLength()
{
return length;
}
public void setLength(double length)
{
if (length > 0)
{
this.length = length;
}
else
{
System.err.println(SIDEERR);
}
}
public double getWidth()
{
return width;
}
public void setWidth(double width)
{
if (width > 0)
{
this.width = width;
}
else
{
System.err.println(SIDEERR);
}
}
public static void main(String[] args)
{
Rectangle test = new Rectangle();
test.setName("myRectangle");
System.out.println( test.toString());
System.out.println("矩形的周长是:" + test.getGirth());
System.out.println("矩形的面积是:" + test.getArea());
}
}
谁能帮帮我呢~~万分感谢啦
//package test.oo.shape; //这个注意考包的结构
public class Rectangle extends MyShape //这个注意public
{private double length;
private double width;
public static final String SIDEERR = "长方形的长和宽必须大于0!"; //这个注意考static 和finalpublic Rectangle() //注意考构造函数的格式
{
init();
}public Rectangle(double a, double b)
{
if ((a <= 0) || (b <= 0))
{
System.err.println(SIDEERR) ; //这儿注意考错误流
init();
}
else //这儿有个if else注意考这个语句
{
this.length = a;
this.width = b;
}
}private void init()
{
this.length = 5;
this.width = 4;
}public double getGirth()
{
return (this.length + this.width) * 2;
}
public double getArea()
{
return this.length * this.width;
}
public String toString() //这些方法或者说函数,注意考他的格式
{
return "矩形的名字是:" + this.name + ",长为" + this.length + ",宽为" + this.width; //这边一个name没有声明,不知道是不是你考错了
}
public double getLength()
{
return length;
}
public void setLength(double length)
{
if (length > 0)
{
this.length = length;
}
else
{
System.err.println(SIDEERR);
}
}
public double getWidth()
{
return width;
}
public void setWidth(double width)
{
if (width > 0)
{
this.width = width;
}
else
{
System.err.println(SIDEERR);
}
}
public static void main(String[] args) //这儿注意main函数的格式
{
Rectangle test = new Rectangle();
test.setName("myRectangle"); //这儿还有一个setName函数没有声明
System.out.println( test.toString());
System.out.println("矩形的周长是:" + test.getGirth());
System.out.println("矩形的面积是:" + test.getArea());
}
}//这题目真的不难,相信你一定能过的
多做几个程序,就可以 了
public Rectangle() {
init();//调用init();方法
} //长度和宽度判断方法,判断是否小于0,需要提供参数两个且都是浮点类型
public Rectangle(double a, double b) {
if ((a <= 0) || (b <= 0)) {//判断是否小于0,小于0则进入该方法体
System.err.println(SIDEERR);//输出前面声明的常量
init();//调用init();方法
} else {//如果不小于0,进入该方法体
this.length = a;//给length赋值a
this.width = b;//给width赋b
}
} private void init() {
this.length = 5;//给length赋值5
this.width = 4;//给width赋4
} //计算周长的方法
public double getGirth() {
return (this.length + this.width) * 2;
} //计算面积的方法
public double getArea() {
return this.length * this.width;
} public String toString() {
//this.name是调用父类里的成员,this.length是调用本类里的成员,this.width是调用本类里的成员
return "矩形的名字是:" + this.name + ",长为" + this.length + ",宽为" + this.width;
} public double getLength() {
return length;
} public void setLength(double length) {
if (length > 0) {
this.length = length;
} else {
System.err.println(SIDEERR);
}
} public double getWidth() {
return width;
} public void setWidth(double width) {
if (width > 0) {
this.width = width;
} else {
System.err.println(SIDEERR);
}
} public static void main(String[] args) {
Rectangle test = new Rectangle();
test.setName("myRectangle");
System.out.println(test.toString());
System.out.println("矩形的周长是:" + test.getGirth());
System.out.println("矩形的面积是:" + test.getArea());
}
}
public class MyShape {
String name; public String getName() {
return name;
} public void setName(String name) {
this.name = name;
}