函数题:学生类
设计一个名为StudentOf2019EE的类,表示2019电子信息工程专业的学生。类包含:
* String类型私有成员变量name,表示学生的姓名。
* int型私有成员变量money,表示学生可支配的金额(不能为负数)。
* int型私有静态(类)变量numberOfObjects,表示StudentOf2019EE对象的数量,初始值为0;每创建一个StudentOf2019EE对象,numberOfObjects应当加1。
* int型私有静态(类)变量clazzMoney,表示全体学生缴纳的班费余额,初始值为0。
* 构造方法StudentOf2019EE(String name),参数name用于初始化学生的姓名,可支配金额设为默认值100。
* 构造方法StudentOf2019EE(String name, int mongey),参数name用于初始化学生的姓名,参数money用于初始化学生的可支配金额。
* 为name和money添加getter和setter方法,都为公共方法。
* 公共的实例方法void payClazzMoney(int amount),表示从学生的可支配金额中支出数量为amount的金额作为班费(如果学生的可支配金额<amount,则有多少交多少班费)。
* 公共的静态方法void clazzActivity(int amount),表示班级活动,需要从班费余额支出数量为amount的金额作为活动经费(如果班费余额<amount,则有多少支出多少)。
创建三个StudentOf2019EE对象,三个对象分别支付一笔钱作为班费,最后组织一次班级活动。
### 裁判测试程序样例:
c++
import java.util.Scanner;
public class Main {
public static void main(String args[]){
Scanner input = new Scanner(System.in);
System.out.println("numberOfObjects=" + StudentOf2019EE.getNumberOfObjects() + ",clazzMoney=" + StudentOf2019EE.getClazzMoney());
StudentOf2019EE a = new StudentOf2019EE("Tom");
StudentOf2019EE b = new StudentOf2019EE("Jerry", 200);
StudentOf2019EE c = a;
a.payClazzMoney(input.nextInt());
System.out.println("numberOfObjects=" + StudentOf2019EE.getNumberOfObjects() + ",clazzMoney=" + StudentOf2019EE.getClazzMoney());
b.payClazzMoney(input.nextInt());
System.out.println("numberOfObjects=" + StudentOf2019EE.getNumberOfObjects() + ",clazzMoney=" + StudentOf2019EE.getClazzMoney());
c.payClazzMoney(input.nextInt());
System.out.println("numberOfObjects=" + StudentOf2019EE.getNumberOfObjects() + ",clazzMoney=" + StudentOf2019EE.getClazzMoney());
StudentOf2019EE.clazzActivity(input.nextInt());
System.out.println("numberOfObjects=" + StudentOf2019EE.getNumberOfObjects() + ",clazzMoney=" + StudentOf2019EE.getClazzMoney());
}
}
/* 请在这里填写答案 */
### 输入样例:
in
50
300
100
400
### 输出样例:
out
numberOfObjects=0,clazzMoney=0
numberOfObjects=2,clazzMoney=50
numberOfObjects=2,clazzMoney=250
numberOfObjects=2,clazzMoney=300
numberOfObjects=2,clazzMoney=0
答案:若无答案欢迎评论
* String类型私有成员变量name,表示学生的姓名。
* int型私有成员变量money,表示学生可支配的金额(不能为负数)。
* int型私有静态(类)变量numberOfObjects,表示StudentOf2019EE对象的数量,初始值为0;每创建一个StudentOf2019EE对象,numberOfObjects应当加1。
* int型私有静态(类)变量clazzMoney,表示全体学生缴纳的班费余额,初始值为0。
* 构造方法StudentOf2019EE(String name),参数name用于初始化学生的姓名,可支配金额设为默认值100。
* 构造方法StudentOf2019EE(String name, int mongey),参数name用于初始化学生的姓名,参数money用于初始化学生的可支配金额。
* 为name和money添加getter和setter方法,都为公共方法。
* 公共的实例方法void payClazzMoney(int amount),表示从学生的可支配金额中支出数量为amount的金额作为班费(如果学生的可支配金额<amount,则有多少交多少班费)。
* 公共的静态方法void clazzActivity(int amount),表示班级活动,需要从班费余额支出数量为amount的金额作为活动经费(如果班费余额<amount,则有多少支出多少)。
创建三个StudentOf2019EE对象,三个对象分别支付一笔钱作为班费,最后组织一次班级活动。
### 裁判测试程序样例:
c++
import java.util.Scanner;
public class Main {
public static void main(String args[]){
Scanner input = new Scanner(System.in);
System.out.println("numberOfObjects=" + StudentOf2019EE.getNumberOfObjects() + ",clazzMoney=" + StudentOf2019EE.getClazzMoney());
StudentOf2019EE a = new StudentOf2019EE("Tom");
StudentOf2019EE b = new StudentOf2019EE("Jerry", 200);
StudentOf2019EE c = a;
a.payClazzMoney(input.nextInt());
System.out.println("numberOfObjects=" + StudentOf2019EE.getNumberOfObjects() + ",clazzMoney=" + StudentOf2019EE.getClazzMoney());
b.payClazzMoney(input.nextInt());
System.out.println("numberOfObjects=" + StudentOf2019EE.getNumberOfObjects() + ",clazzMoney=" + StudentOf2019EE.getClazzMoney());
c.payClazzMoney(input.nextInt());
System.out.println("numberOfObjects=" + StudentOf2019EE.getNumberOfObjects() + ",clazzMoney=" + StudentOf2019EE.getClazzMoney());
StudentOf2019EE.clazzActivity(input.nextInt());
System.out.println("numberOfObjects=" + StudentOf2019EE.getNumberOfObjects() + ",clazzMoney=" + StudentOf2019EE.getClazzMoney());
}
}
/* 请在这里填写答案 */
### 输入样例:
in
50
300
100
400
### 输出样例:
out
numberOfObjects=0,clazzMoney=0
numberOfObjects=2,clazzMoney=50
numberOfObjects=2,clazzMoney=250
numberOfObjects=2,clazzMoney=300
numberOfObjects=2,clazzMoney=0
答案:若无答案欢迎评论