关于java中函数功能的封装
![]() | ![]() | |
![]() | [java] //Triangle类,用于封装Triangle的属性及功能。 package qing;
public class Triangle { double sideA,sideB,sideC,area,length; boolean boo; Triangle () { this.sideA = 3; this.sideB = 4; this.sideC = 5; } public boolean Trangle(double a,double b,double c) { this.sideA = a; this.sideB = b; this.sideC = c; //参数a,b,c分别赋值给sideA,sideB,sideC if(this.sideA + this.sideB > this.sideC ;; this.sideA + this.sideC > this.sideB ;; this.sideB + this.sideC > this.sideA) //a,b,c构成三角形的条件表达式 { this.boo = true;//给boo赋值。 } else { this.boo = false;//给boo赋值。 } return boo; } public double getLength() { if(this.sideA + this.sideB > this.sideC ;; this.sideA + this.sideC > this.sideB ;; this.sideB + this.sideC > this.sideA) { this.length = this.sideA + this.sideB + this.sideC; } else { System.out.println("不是一个三角形,不能计算周长"); this.length = 0; } return this.length; } public double getArea() { if(this.sideA + this.sideB > this.sideC ;; this.sideA + this.sideC > this.sideB ;; this.sideB + this.sideC > this.sideA) { double p=(sideA+sideB+sideC)/2.0; area=Math.sqrt(p*(p-sideA)*(p-sideB)*(p-sideC)) ; return area; } else { System.out.println("不是一个三角形,不能计算面积"); return 0; } } public void setABC(double a,double b,double c) { this.sideA = a; this.sideB = b; this.sideC = c;//参数a,b,c分别赋值给sideA,sideB,sideC if(this.sideA + this.sideB > this.sideC ;; this.sideA + this.sideC > this.sideB ;; this.sideB + this.sideC > this.sideA) //a,b,c构成三角形的条件表达式 { this.boo = true;//给boo赋值。 } else { this.boo = false;//给boo赋值。 } }
}
[java] //Lader类,用于封装Lader的属性及功能。
package qing;
public class Lader { double above,bottom,height,area; Lader(double a,double b,double h) { this.above = a; this.bottom = b; this.height = h;//方法体,将参数a,b,c分别赋值给above,bottom,height } public double getArea() { this.area = (this.above + this.bottom) * this.height/2;//方法体,,要求计算出area返回 return this.area; }
}
[java] //Circle类,用于封装Circle的属性及功能。
package qing;
public class Circle { double radius,area; Circle(double r) { this.radius = r; //方法体 } public double getArea() //getArea方法体的代码 { this.area = Math.PI * this.radius * this.radius; //方法体,要求计算出area返回 return this.area; } public double getLength() { double length; length = 2 * Math.PI * this.radius;//要求计算出length返回 return length; } void setRadius(double newRadius) { radius=newRadius; } double getRadius() { return radius; }
}
[java] //Test类,用于测试各个类内的功能是否能实现。 package qing;
public class Test { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub
double length,area; Circle circle=null; Triangle trangle; Lader lader; circle = new Circle(3); //创建对象circle trangle = new Triangle (); //创建对象trangle。 lader = new Lader(3,4,5); //创建对象lader length = circle.getLength(); // circle调用方法返回周长并赋值给length System.out.println("圆的周长:"+length); area = circle.getArea(); // circle调用方法返回面积并赋值给area System.out.println("圆的面积:"+area); length = trangle.getLength(); // trangle调用方法返回周长并赋值给length System.out.println("三角形的周长:"+length); area = trangle.getArea();// trangle调用方法返回面积并赋值给area System.out.println("三角形的面积:"+area); area = lader.getArea() ; // lader调用方法返回面积并赋值给area System.out.println("梯形的面积:"+area); trangle.setABC(12, 34, 1); // trangle调用方法设置三个边,要求将三个边修改为12,34,1。 area = trangle.getArea();// trangle调用方法返回面积并赋值给area System.out.println("三角形的面积:"+area); length = trangle.getLength(); // trangle调用方法返回周长并赋值给length System.out.println("三角形的周长:"+length); }
| |
![]() | ![]() |