当前位置:   article > 正文

实验二 Java类编程实验_编写一个测试方法学生类

编写一个测试方法学生类

第1关:编写一个代表三角形的类

编程要求

根据提示,在右侧编辑器Begin-End处补充代码:

编写一个学生类(Student.java),包含的属性有学号、姓名、年龄。将所有学生存储在一个数组中,自拟数据,用数组的初始化方法给数组赋值,并实现如下操作: ① 按数组中顺序显示所有学生信息。 ② 将所有学生年龄增加1岁。 ③ 显示所有年龄大于20岁的学生信息。

  1. import java.util.Scanner;
  2. public class Triangle {
  3. // 自行设计类的实现
  4. /********** Begin **********/
  5. private double a;
  6. private double b;
  7. private double c;
  8. private double area;
  9. private double longer;
  10. public Triangle(double a,double b,double c){
  11. this.a=a;
  12. this.b=b;
  13. this.c=c;
  14. }
  15. public double getA(){
  16. return this.a;
  17. }
  18. public void setA(double a){
  19. this.a=a;
  20. }
  21. public double getB(){
  22. return this.b;
  23. }
  24. public void setB(double b){
  25. this.b=b;
  26. }
  27. public double getC(){
  28. return this.c;
  29. }
  30. public void setC(double c){
  31. this.c=c;
  32. }
  33. public String getArea(){
  34. double s=0;
  35. String areas;
  36. s=(a+b+c)/2;
  37. area=Math.sqrt(s*(s-a)*(s-b)*(s-c));
  38. areas=String.format("%.2f",area);
  39. return areas;
  40. }
  41. public String getLonger(){
  42. String longers;
  43. longer=a+b+c;
  44. longers=String.format("%.2f",longer);
  45. return longers;
  46. }
  47. /********** End **********/
  48. public static void main(String[] args) {
  49. /********** Begin **********/
  50. Scanner sc = new Scanner(System.in);
  51. double a,b,c; //定义三条边
  52. a = sc.nextDouble();
  53. b = sc.nextDouble();
  54. c = sc.nextDouble();
  55. Triangle t1 = new Triangle(a, b, c);
  56. //输出面积
  57. System.out.println("三角形("+t1.getA()+","+t1.getB()+","+t1.getC()+")"+"的面积为:" + t1.getArea() );
  58. //输出周长
  59. System.out.println("三角形("+t1.getA()+","+t1.getB()+","+t1.getC()+")"+"的周长为:" + t1.getLonger() );
  60. /********** End **********/
  61. }
  62. }

第2关:编写一个圆环类

编程要求

根据提示,在右侧编辑器Begin-End处补充代码:

编写一个圆环类(Ring.java)。圆环类有3个数据成员,分别是内半径innerRadius,外半径outerRadius和颜色color,这些属性通过getset方法进行封装,该类封装有求圆环面积、外圆周长和内圆周长的方法。

① 通过构造方法传递内半径5,外半径8,颜色为red,输出测试结果; ② 将内半径改为4,外半径改为6,颜色改为blue后,再次输出测试结果。 ③ 所有输出结果要求保留2位小数。

  1. public class Ring {
  2. private double InnerRadius;//innerRadius
  3. private double OuterRadius;//outerRadius
  4. private String color ;//color
  5. private double pi=3.14157;
  6. private double area;
  7. private double perimeter;
  8. public Ring(double i, double i1, String red) {
  9. this.InnerRadius=i;
  10. this.OuterRadius=i1;
  11. this.color=red;
  12. }
  13. public String format(double s){
  14. String areas=String.format("%.2f",s);
  15. return areas;
  16. }
  17. public String Getarea(){
  18. area=OuterRadius*OuterRadius*pi-InnerRadius*InnerRadius*pi;
  19. String areas=format(area);
  20. return areas;
  21. }
  22. public String GetInnerRadiusPerimeter(){
  23. perimeter=pi*2*InnerRadius;
  24. String areas=format(perimeter);
  25. return areas;
  26. }
  27. public String GetOuterRadiusPerimeter(){
  28. perimeter=pi*2*OuterRadius;
  29. String areas=format(perimeter);
  30. return areas;
  31. }
  32. public double getInnerRadius() {
  33. return InnerRadius;
  34. }
  35. public void setInnerRadius(double innerRadius) {
  36. InnerRadius = innerRadius;
  37. }
  38. public double getOuterRadius() {
  39. return OuterRadius;
  40. }
  41. public void setOuterRadius(double outerRadius) {
  42. OuterRadius = outerRadius;
  43. }
  44. public String getColor() {
  45. return color;
  46. }
  47. public void setColor(String color) {
  48. this.color = color;
  49. }
  50. public static void main(String[] args) {
  51. Ring ring = new Ring(5, 8, "red");
  52. System.out.println("圆环的内半径: " + ring.getInnerRadius() );
  53. System.out.println("圆环的外半径: " + ring.getOuterRadius() );
  54. System.out.println("圆环的颜色: " + ring.getColor() );
  55. System.out.println("圆环的面积: " + ring.Getarea() );
  56. System.out.println("圆环的外圆周长: " + ring.GetOuterRadiusPerimeter() );
  57. System.out.println("圆环的内圆周长: " + ring.GetInnerRadiusPerimeter() );
  58. ring.setInnerRadius(4);
  59. ring.setOuterRadius(6);
  60. ring.setColor("blue");
  61. System.out.println();
  62. System.out.println("圆环的内半径: " + ring.getInnerRadius() );
  63. System.out.println("圆环的外半径: " + ring.getOuterRadius() );
  64. System.out.println("圆环的颜色: " + ring.getColor() );
  65. System.out.println("圆环的面积: " + ring.Getarea() );
  66. System.out.println("圆环的外圆周长: " + ring.GetOuterRadiusPerimeter( ) );
  67. System.out.println("圆环的内圆周长: " + ring.GetInnerRadiusPerimeter());
  68. }
  69. }

第3关:编写一个学生类

编程要求

根据提示,在右侧编辑器Begin-End处补充代码:

编写一个学生类(Student.java),包含的属性有学号、姓名、年龄。将所有学生存储在一个数组中,自拟数据,用数组的初始化方法给数组赋值,并实现如下操作: ① 按数组中顺序显示所有学生信息。 ② 将所有学生年龄增加1岁。 ③ 显示所有年龄大于20岁的学生信息。

  1. public class Student {
  2. /********** Begin **********/
  3. // 自行设计类的实现
  4. @Override
  5. public String toString() {
  6. return "学号:" +
  7. id +
  8. ",姓名:" + name +
  9. ",年龄:" + age;
  10. }
  11. public Student(int id, int age, String name) {
  12. this.id = id;
  13. this.name = name;
  14. this.age = age;
  15. }
  16. private int id;
  17. private String name;
  18. private int age;
  19. public int getId() {
  20. return id;
  21. }
  22. public void setId(int id) {
  23. this.id = id;
  24. }
  25. public String getName() {
  26. return name;
  27. }
  28. public void setName(String name) {
  29. this.name = name;
  30. }
  31. public int getAge() {
  32. return age;
  33. }
  34. public void setAge(int age) {
  35. this.age = age;
  36. }
  37. /********** End **********/
  38. public static void main(String args[]) {
  39. Student s1 = new Student(1, 18, "小明");
  40. Student s2 = new Student(2, 20, "小张");
  41. Student s3 = new Student(3, 19, "小李");
  42. Student s4 = new Student(4, 18, "小王");
  43. Student s5 = new Student(5, 20, "小赵");
  44. Student s[] = { s1, s2, s3, s4, s5 }; // 给对象数组赋值
  45. System.out.println("班级学生名单如下:");
  46. output(s); // 第1次调用output方法输出数组
  47. // 将所有学生年龄加 1
  48. for (Student item: s){
  49. item.setAge(item.getAge()+1);
  50. }
  51. System.out.println("所有学生年龄加 1 后...");
  52. output(s); /// 第2次调用output方法输出数组
  53. /* 以下程序统计大于20岁的学生个数 */
  54. int count = 0;
  55. for (Student item:s
  56. ) {
  57. if (item.getAge()>20){
  58. count++;
  59. }
  60. }
  61. System.out.println("大于 20 岁人数是:" + count);
  62. }
  63. /* 以下方法输岀学生数组的所有元素 */
  64. private static void output(Student s[]) {
  65. for (int i = 0; i < s.length; i++){
  66. System.out.println(s[i].toString());}
  67. }
  68. }

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号