題目要求:編寫Student類,包括學生的學號no,姓名name,成績score三個基本屬性,以及一個求所有學生總成績的靜態函數sum。使用構造函數對3個學生的基本信息進行初始化,使用靜態方法計算3名學生的平均成績ave。
Student類中的方法根據需要自行定義。
代碼演示:
package student; import java.math.BigDecimal; import java.util.*; class Student { int no; String name; int score; static int sum; /*Student(){ }*/ public Student(int no, String name, int score,int sum){ this.no=no; this.name=name; this.score=score; this.sum+=sum; } /* public int getNo(){ return no; } public void setNo(){ this.no=no; } public String getName(){ return name; } public void setName(String name) { this.name = name; } public int getScore() { return score; } public void setScore(int score) { this.score = score; } */ public static int getSum() { return sum; } public static void setSum(int sum) { Student.sum += sum; } public String showInformation(){ return "學號:"+no+",姓名:"+name+",分數:"+score; } public static double ave(){ double ave =Student.sum/3.0; BigDecimal num = new BigDecimal(ave); ave = num.setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue(); return ave; } /*public int showScore(){ return sum; }*/ } public class TestStudent{ public static void main(String args[]){ Scanner scan= new Scanner(System.in); Student stu1= new Student(20191145,"小明",100,100); Student stu2 = new Student(20191150,"小王",90,90); Student stu3 = new Student(20191147,"小孫",100,100); System.out.println(stu1.showInformation()+"\n"+stu2.showInformation()+"\n"+stu3.showInformation()); System.out.println("分數總和為:"+Student.getSum()); System.out.println("三名學生的平均值為:"+Student.ave()); } }
運行截圖: