按照题目要求编写的圆,圆锥和测试类的Java程序如下
Test.java文件内容如下
class Circle{
private double r
private String color
public Circle(double r){
this.r=r
}
public double area(){
return Math.PI*r*r
}
public double perimeter(){
return Math.PI*2*r
}
public double getR(){
return this.r
}
public void setR(double r){
this.r=r
}
public String getColor(){
return this.color
}
public void setColor(String color){
this.color=color
}
public String toString(){
return "圆的半径为"+r+",颜色为"+color
}
}
class Cone{
private Circle c
private double h
private String color
public Cone(Circle c,double h){
this.c=c
this.h=h
}
public double volume(){
return 1.0/3*c.area()*h
}
public Circle getCircle(){
return this.c
}
public void setCircle(Circle c){
this.c=c
}
public double getH(){
return this.h
}
public void setH(double h){
this.h=h
}
public String getColor(){
return this.color
}
public void setColor(String color){
this.color=color
}
public String toString(){
return "圆锥的底面积为"+c.area()+",高为"+h+",颜色为"+color
}
}
public class Test{
public static void main(String[] args){
Circle circle1=new Circle(2.5)
circle1.setColor("红色")
System.out.println(circle1.toString())
System.out.println("圆的面积为"+circle1.area())
System.out.println("圆的周长为"+circle1.perimeter())
Cone circlar1=new Cone(circle1,2.7)
circlar1.setColor("蓝色")
System.out.println(circlar1.toString())
System.out.println("圆锥的体积为"+circlar1.volume())
}
}
①
public class DividedByZeroException extends Exception {
private static final long serialVersionUID = 4420887449631055240L
public String getMessage() {
return "除数不能为零"
}
}
上面是异常类DividedByZeroException的代码。
②
import java.util.Scanner
public class Test {
@SuppressWarnings("resource")
public static void main(String[] args) {
System.out.print("请输入被除数:")
Scanner scanner1 = new Scanner(System.in)
int input1 = scanner1.nextInt()
System.out.print("请输入除数:")
Scanner scanner2 = new Scanner(System.in)
int input2 = scanner2.nextInt()
System.out.print("两个数相除结果为:")
if (input2 == 0) {
try {
throw new DividedByZeroException()
} catch (DividedByZeroException e) {
e.printStackTrace()
}
} else {
System.out.println(input1 / input2)
}
scanner1.close()
scanner2.close()
}
}
上面是测试类代码和运行结果,麻烦看一下是否能满足要求。
import java.util.Scannerpublic class Students {public static void main(String[] args) {Scanner in = new Scanner(System.in)String[] students=new String[10]String No=nullfor (int i = 0i <10 i++) {System.out.println("请输入学号:")No=in.next()students[i]=No}System.out.println("学号是:")for (String a:students) {System.out.print(a+" ")}}}