CircleV2.java:
package javaDemo1;
/**
* 使用面向对象的方式创建一个圆类,分别计算周长和面积
* 1、定义类:Cirlce
* 2、抽取属性
* 3、定义方法
* 4、调用方法并打印结果
* @author Monster丶ZF
* @version1.8
* @data 2019年5月1日
* @remakeTODO
*/
public class CircleV2 {
/** 圆的半径**/
private double radius; //只能通过方法写
/**圆的周长**/
private double perimeter;//只能读不能写
/**圆的面积**/
private double area;
public double getRadius(){
return radius;
}
/**默认的构造函数**/
public CircleV2() {
}
public CircleV2(double radius) {
this.steRadius(radius); //直接使用封装好的方法
//this.radius = radius;
}
public void show(){
System.out.println("半径为:" + this.getRadius());
String str1 = String.format("周长为:%.2f", this.getPerimeter());
System.out.println(str1);
String str2 = String.format("周长为:%.2f", this.getArea());
System.out.println(str2);
}
/**如果没有这个方法,radius就是只读不能写**/
public void steRadius(double radius){
if(radius <= 0){
System.err.println("半径输入不能小于等于0!");
System.exit(0);
}else{
this.radius = radius;
}
}
public double getPerimeter() {
perimeter = 2 * Math.PI * radius;
return perimeter;
}
public double getArea() {
area = Math.PI * Math.pow(radius, 2);
return area;
}
}
CircleTest.java:
package javaDemo1;
import java.util.Scanner;
public class CircleTest {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("请输入圆半径:");
double radius = input.nextDouble();
CircleV2 circle = new CircleV2(radius);
circle.show();
input.close();
}
}
转载自原文链接, 如需删除请联系管理员。
原文链接:使用面向对象的方式创建一个圆类,分别计算周长和面积,转载请注明来源!