本程序总共创建了两个类
1.创建Draw类;
package draw;
/*a)属性:private double drawRound;(代表图形的周长)
b)构造方法:给属性赋值为0;
c)方法:getRound()返回代表周长的属性值
d)方法:void round(double r) 计算圆形的周长,参数表示圆的半径
e)方法:void round(int length,int width) 计算长方形的周长,参数表示长方形的长与宽
f)方法:void round(int length)计算正方形的周长,参数表示正方形的边长
g)方法:void round(int a,int b,int c)计算三角形的周长,参数表示三角形的三条边。*/
public class Draw {
double Pi = 3.14159;
private double drawRound;//代表图形的周长
Draw(){
this.drawRound = 0;
}
public double getRound() {
return drawRound;
}
//计算圆形的周长
public void round(double r) {
drawRound = 2*r*Pi;
System.out.println("圆形的周长是:"+drawRound);
}
//计算长方形的周长
public void round(int length,int width) {
drawRound =2*(length+width);
System.out.println("长方形的周长是:"+drawRound);
}
//计算正方形的周长
public void round(int length) {
drawRound =4*length;
System.out.println("正方形的周长是:"+drawRound);
}
//计算三角形的周长
public void round(int a,int b,int c) {
if(a+b>c&&a+c>b&&b+c>a) {
drawRound = (a+b+c)/2;
System.out.println("三角形的周长是:"+drawRound);
}else {
System.out.println("您输入的三条边不能构成三角形,无法计算!");
}
}
}
package draw;
import java.util.Scanner;
/*2、创建类TestDraw,主方法中,接受用户输入每种图形求周长所需要的数据,
并调用相应的round方法求出周长并显示出来,注意描述清楚是哪一种图形*/
public class TestDraw {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
Draw d1 = new Draw();
int length = 0;
String draw = "";
System.out.println("请选择你要计算的图形:【长方形 正方形 三角形 圆】");
draw = scan.next();
do
{if("长方形".equals(draw)||"正方形".equals(draw)||
"三角形".equals(draw)||"圆".equals(draw)) {
if("长方形".equals(draw)) {
System.out.println("请输入长方形的长:");
length = scan.nextInt();
System.out.println("请输入长方形的宽:");
int width = scan.nextInt();
d1.round(length, width);
}else if("正方形".equals(draw)){
System.out.println("请输入正方形的边长:");
length = scan.nextInt();
d1.round(length);
}else if("三角形".equals(draw)){
System.out.println("请输入三角形的三边长:");
int a = scan.nextInt();
int b = scan.nextInt();
int c = scan.nextInt();
d1.round(a, b, c);
}else if("圆".equals(draw)){
System.out.println("请输入圆的半径:");
double r = scan.nextInt();
d1.round(r);
}
}else {
System.out.println("您输入的图形有误,请重新输入:");
}
System.out.println("请选择你要计算的图形:【长方形 正方形 三角形 圆】,任意键退出");
draw = scan.next();
}while("长方形".equals(draw)||"正方形".equals(draw)||
"三角形".equals(draw)||"圆".equals(draw));{
System.out.println("欢迎使用,再见!");
}
}
}
//2.创建类TestDraw类
package draw;
import java.util.Scanner;
/*2、创建类TestDraw,主方法中,接受用户输入每种图形求周长所需要的数据,
并调用相应的round方法求出周长并显示出来,注意描述清楚是哪一种图形*/
public class TestDraw {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
Draw d1 = new Draw();
int length = 0;
String draw = "";
System.out.println("请选择你要计算的图形:【长方形 正方形 三角形 圆】");
draw = scan.next();
do
{if("长方形".equals(draw)||"正方形".equals(draw)||
"三角形".equals(draw)||"圆".equals(draw)) {
if("长方形".equals(draw)) {
System.out.println("请输入长方形的长:");
length = scan.nextInt();
System.out.println("请输入长方形的宽:");
int width = scan.nextInt();
d1.round(length, width);
}else if("正方形".equals(draw)){
System.out.println("请输入正方形的边长:");
length = scan.nextInt();
d1.round(length);
}else if("三角形".equals(draw)){
System.out.println("请输入三角形的三边长:");
int a = scan.nextInt();
int b = scan.nextInt();
int c = scan.nextInt();
d1.round(a, b, c);
}else if("圆".equals(draw)){
System.out.println("请输入圆的半径:");
double r = scan.nextInt();
d1.round(r);
}
}else {
System.out.println("您输入的图形有误,请重新输入:");
}
System.out.println("请选择你要计算的图形:【长方形 正方形 三角形 圆】,任意键退出");
draw = scan.next();
}while("长方形".equals(draw)||"正方形".equals(draw)||
"三角形".equals(draw)||"圆".equals(draw));{
System.out.println("欢迎使用,再见!");
}
}
}
注: *this关键字
在java中一个类的成员变量,成员方法,默认都有一个this指示代词.
this存储的就是这个堆内存中对象的地址
即this是指示代词,标示是对象.
属于对象,即那个对象调用this,this就属于那个对象