🎯问题:
(1)需求分析:
(a)学生有姓名、年龄属性,并有显示学生信息的方法;
(b)班级有班级名称、学生数组、学生数量属性和显示班级所有学生信息的方法。
(2)设计步骤:
(a)定义学生类Student,定义成员变量:学生姓名(String name),年龄(int age),定义对应的getXxx()/setXxx()方法,定义无参构造方法和带参构造方法,以及一个显示所有成员信息的toString()方法;
(b)定义学生班级类StudentClass,定义成员变量:班级名称(String name),学生数量(int number),学生名单数组(Student[] member = new Student[50]);定义以上成员变量对应的getXxx()/setXxx()方法,定义无参构造方法和带参构造方法;
(c)在StudentClass类中定义addStudent(Student s)方法,用于向班级添加学生,如果学生数组(Student[] member)中的人数小于number,则学生对象(Student s)加入到学生数组,学生数量number++,否则显示“本班已经有50名学生,无法添加。”的信息;
(d)在StudentClass类中定义showMsg()方法,用于显示班级学生信息:使用输出语句分别输出班级名称、班级学生人数信息,遍历学生数组(Student[] member),输出数组中每个学生对象的信息((member[i].toString());
(e)定义一个测试类Test02测试功能,具体如下:调用StudentClass类的无参构造方法创建学生班级对象sc,设置班级名称,调用Student类的无参构造方法创建学生对象s1,设置学生姓名和年龄,调用Student类的带参构造方法创建学生对象s2、s3,学生班级对象sc调用addStudent()方法向学生数组添加学生对象s1、s2、s3,最后学生班级对象sc调用showMsg()方法显示班级学生信息。测试结果如下:
🎯 代码:
package file3; public class Student { private String name; private int age; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public Student(String name, int age) { super(); this.name = name; this.age = age; } public Student() { super(); } @Override public String toString() { return "Student [name=" + name + ", age=" + age + "]"; } public static class StudentClass{ private String name; private int number; private Student[]member=new Student[50]; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getNumber() { return number; } public void setNumber(int number) { this.number = number; } public Student[] getMember() { return member; } public void setMember(Student[] member) { this.member = member; } public StudentClass(String name, int number, Student[] member) { super(); this.name = name; this.number = number; this.member = member; } public StudentClass() { super(); } public void addStudent(Student s) { if(number<50) { member[number]=s; number++; } else System.out.println("本班已经有50名学生,无法添加"); } public void showMsy() { System.out.println("班级名称:"+name); System.out.println("班级学生人数"+number); for(int i=0;i<number;i++) { System.out.println(member[i].toString()); } } public static void main(String[] args) { StudentClass sc=new StudentClass(); sc.setName("软工2205班"); Student s1=new Student(); s1.setName("你好"); s1.setAge(18); Student s2=new Student("闫桑",19); Student s3=new Student("刘桑",18); sc.addStudent(s1); sc.addStudent(s2); sc.addStudent(s3); sc.showMsy(); } } }
💛废话文学:
Java的优势:
跨平台性: Java是一种跨平台的编程语言,即一次编写,到处运行。Java程序在不同的操作系统上具有很高的移植性,这使得开发人员能够通过Java开发应用程序,无需担心底层操作系统的差异。
面向对象: Java是一种面向对象的编程语言,支持封装、继承和多态等面向对象的特性。这种编程范式使得代码可以更加模块化、可重用,并且有助于提高代码的可维护性和可扩展性。
强大的生态系统: Java拥有丰富的标准库和第三方库,提供了各种功能强大的工具和框架,如Spring、Hibernate和JUnit等。这些工具和框架使得Java开发人员能够更加高效地开发应用程序,并提供了解决特定问题的解决方案。
多线程支持: Java内置了对多线程编程的支持,使得开发人员可以轻松地创建并发应用程序。多线程编程可以有效地利用多核处理器的性能,并提高程序的响应速度和吞吐量。
安全性: Java拥有严格的安全机制,包括字节码验证、安全管理器和安全沙箱等,可以防止恶意代码对系统的破坏。这使得Java成为开发安全性要求较高的应用程序的理想选择。