1.定义一个StudentNN类(NN为学号末两位)
a)属性:姓名、性别、年龄、学号、专业,分别定义为:String name, String gender, int age, String sid, String major, 所有的变量必须为私有(private),major为静态static;
b)无参构造函数,功能:打印提示信息,如:This is constructor;
c)4个有参构造函数:参数分别为(name)、(name, gender)、(name, gender, age)和(name, gender, age, sid),功能:给属性赋值。提示:可在构造函数用this调用另一构造函数;
d)setName、setGender、setAge、setSid和setMajor方法,分别设置对应的属性
e)show函数,输出姓名、性别、年龄、学号和专业信息。
2.定义类的构造代码块
a)为类加入构造代码初始化块,打印提示信息,如:“一个新的学生诞生了”;
3.编写静态代码初始化块
a)打印提示信息,如:“This is static initialization block”;
b)将major值初始设置为“软工”;
4.编写main方法并运行
a)在main方法中创建2个学生对象,可以在构造函数初始化对象,也可以通过调用setter方法设置。其中的一个对象用自己的姓名和学号等信息;
b)调用两个对象的show函数;
c)用setMajor方法将专业值设置为“软件工程”;
d)再次调用两个对象的show函数;
e)编译和运行程序,观察输出结果

Java题速速帮下,有偿
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- 小飞LOVE霞 2022-09-23 18:31关注
class Student01 { private String name; private String gender; private int age; private String sid; private static String major; public static void main(String[] args) { Student01 s1 = new Student01("小明","男", 20,"1001"); Student01 s2 = new Student01("小花","女", 18,"1002"); s1.show(); s2.show(); Student01.setMajor("软件工程"); s1.show(); s2.show(); } public Student01() { System.out.println("This is constructor"); } public Student01(String name) { this.name = name; } public Student01(String name, String gender) { this.name = name; this.gender = gender; } public Student01(String name, String gender, int age) { this.name = name; this.gender = gender; this.age = age; } public Student01(String name, String gender, int age, String sid) { this.name = name; this.gender = gender; this.age = age; this.sid = sid; } public void setName(String name) { this.name = name; } public void setGender(String gender) { this.gender = gender; } public void setAge(int age) { this.age = age; } public void setSid(String sid) { this.sid = sid; } public static void setMajor(String major) { Student01.major = major; } public void show() { String str = "Student01{" + "name='" + name + '\'' + ", gender='" + gender + '\'' + ", age=" + age + ", sid='" + sid + '\'' + ", major='" + Student01.major + '\'' + '}'; System.out.println(str); } { System.out.println("一个新的学生诞生了"); } static { System.out.println("This is static initialization block"); major = "软工"; } }
结果:
This is static initialization block 一个新的学生诞生了 一个新的学生诞生了 Student01{name='小明', gender='男', age=20, sid='1001', major='软工'} Student01{name='小花', gender='女', age=18, sid='1002', major='软工'} Student01{name='小明', gender='男', age=20, sid='1001', major='软件工程'} Student01{name='小花', gender='女', age=18, sid='1002', major='软件工程'}
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用