Passionate1
2018-08-02 09:37
package com.imooc;
public abstract class Shape {
public abstract void cir();
public abstract void area();
}
package com.imooc;
import java.util.Scanner;
public class Rectangle extends Shape {
Scanner input=new Scanner(System.in);
@Override
public void cir() {
// TODO Auto-generated method stub
System.out.println("请输入矩形的长度");
int a=input.nextInt();
System.out.println("请输入矩形的宽度");
int b=input.nextInt();
int cir=(a+b)*2;
System.out.println("该矩形的周长为"+cir);
}
@Override
public void area() {
// TODO Auto-generated method stub
System.out.println("请输入矩形的长度");
int a=input.nextInt();
System.out.println("请输入矩形的宽度");
int b=input.nextInt();
int are=a*b;
System.out.println("a该矩形的面积为"+are);
}
}
package com.imooc;
import java.util.Scanner;
public class Circle extends Shape {
Scanner hhh=new Scanner(System.in);
@Override
public void cir() {
// TODO Auto-generated method stu
System.out.println("请输入圆的半径");
double r=hhh.nextDouble();
double zhouchang=2*3.1415926*r;
System.out.println("该圆的周长为"+zhouchang);
}
@Override
public void area() {
// TODO Auto-generated method stub
System.out.println("请输入圆的半径");
double r=hhh.nextDouble();
double sss=3.1415926*r*r;
System.out.println("该圆的面积为"+sss);
}
}
package com.imooc;
public class Test {
public static void main(String[] args) {
// TODO Auto-generated method stub
Shape aaa=new Rectangle();
aaa.cir();
aaa.area();
Circle ppp=new Circle();
ppp.cir();
ppp.area();
}
}
请输入矩形的长度
98
请输入矩形的宽度
65
该矩形的周长为326
请输入矩形的长度
55
请输入矩形的宽度
2
a该矩形的面积为110
请输入圆的半径
2
该圆的周长为12.5663704
请输入圆的半径
8
该圆的面积为201.0619264
比如求圆的周长和面积的时候 我的是需要输入两次半径 可以优化为输入一次半径就得到周长和面积吗?求解具体方法
可以创建两个方法,一个方法用来求周长,一个方法用来求面积,只要在主函数里通过圆对象调用就好了,
//求周长
public void methodA(){
double perimeter=2*this.getR()*3.14;
System.out.println("此圆的周长为"+perimeter);
}
//求面积
public void methodB(){
double area=3.14*this.getR()*this.getR;
System.out.println("此圆的面积是:"+area);
}
最后通过创建圆的对象,用对象名 方法名调用即可
Java入门第二季 升级版
530560 学习 · 6091 问题
相似问题