创建Student数组和Student对象,键盘录入

Student类标准Javabean

测试类,注意先创建Student[ ]学生数组,再创建学生对象,对学生对象进行成员变量赋值,再把学生引用赋值给数组元素

          不可以直接对学生数组进行赋值,会显示空指针异常

复制代码
package review06;
/*
编程:
设计一个学生类,包含基本信息:name,age,class_info,做好封装(私有变量,空参构造,公有get/set方法),
测试类中,从键盘上录入5个学生的信息,使用数组保存,然后再遍历输出各个学生的信息
*/
public class Student {
    //成员变量
    private String name;
    private int age;
    private String class_info;
    //构造方法
    Student() {
        // TODO Auto-generated constructor stub
    }
    //setXxx getXxx
    public void setName(String name){
        this.name = name;
    }
    public String getName(){
        return name;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    public String getClass_info() {
        return class_info;
    }
    public void setClass_info(String class_info) {
        this.class_info = class_info;
    }
    
    public void show(){
        System.out.println("姓名"+name+"  年龄"+age+"  班级"+class_info);
    }
}
学生类
复制代码
复制代码
package review06;

import java.util.Scanner;

/*
编程:
设计一个学生类,包含基本信息:name,age,class_info,做好封装(私有变量,空参构造,公有get/set方法),
测试类中,从键盘上录入5个学生的信息,使用数组保存,然后再遍历输出各个学生的信息
*/
//测试类
public class StudentTest {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        //创建学生数组
        Student[] stArray = new Student[2];
        
        for (int i = 0; i < stArray.length; i++) {
            //创建学生对象
            Student st = new Student();
            
            System.out.println("请输入第"+(i+1)+"个学生的姓名");
                st.setName(sc.next()) ;
            System.out.println("请输入第"+(i+1)+"个学生的年龄");
              //不能直接调用数组,因为只是开辟了两个学生数组空间,里面没有具体学生对象
            /// stArray[i].setAge(sc.nextInt());//空指针异常
                st.setAge(sc.nextInt());
            System.out.println("请输入第"+(i+1)+"个学生的班级");
            //stArray[i].setClass_info(sc.next());
                st.setClass_info(sc.next());
            //把学生引用实例赋值给数组
            stArray[i] = st;
            
        }
        //遍历输出
        for (int i = 0; i < stArray.length; i++) {
            System.out.println("第"+(i+1)+"个学生的信息");
            stArray[i].show();
        }
                
    }
}
测试类
复制代码

 

posted @   star521  阅读(2063)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 一文读懂知识蒸馏
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
点击右上角即可分享
微信分享提示