6-1 设计一个学生Student类

使用封装创建一个学生类,属性和方法如下:

  • 属性:学号(stuNo)、姓名(name)、性别(sex)、年龄(age)
  • 添加一个静态变量记录当前学生人数,每创建一个学生对象就自动加1
  • 方法:info()(显示学生所有属性,具体格式参见输出样例)
  • 重写Object类的toString(具体格式参见输出样例)和equals方法(判断规则为:如果两个学生对象的学号相同,则两对象相等)
  • 构造方法

已有的主类Main定义:

import java.util.*;
public class Main {

    public static void main(String[] args) {
        Scanner input=new Scanner(System.in);
        int count=input.nextInt();  //需创建的学生对象个数
        //至少创建2个学生对象
        Student[] arr=new Student[count];
        String no;
        String name;
        int age;
        String sex;

        for(int i=0;i<2;i++) {
            no=input.next();
            name=input.next();
            sex=input.next();
            age=input.nextInt();            
            Student stu=new Student(no,name,sex,age);
            arr[i]=stu;
        }    
        for(int i=2;i<count;i++) {
            Student stu=new Student();
            arr[i]=stu;
        }

         System.out.print("第一个学生");
         arr[0].info();
         System.out.print("第二个学生");
         System.out.println(arr[1]);
         System.out.println("这两个学生"+(arr[0].equals((Object)arr[1])?"相等":"不相等"));
         System.out.println("一共有"+Student.count+"个学生");

     }
}
/* 请在这里填写学生Student类定义 */

输入样例:

第1行表示需要创建的学生对象人数(至少为2)

第2行和第3行依次输入前两个学生的学号、姓名、性别和年龄

3
123 Mike 男  21
123 John 女 22

结尾无空行

输出样例:

第一个学生学号是123;姓名是Mike;年龄是21;性别是男
第二个学生学号是123;姓名是John;年龄是22;性别是女
这两个学生相等
一共有3个学生

结尾无空行

代码如下:

class Student{
	String stuNo;
	String name;
	String sex;
	int age;
	static int count=0;
	Student(String no,String name,String sex,int age){
		this.age=age;
		this.name=name;
		this.sex=sex;
		this.stuNo=no;
		count++;
	}
	Student(){
		count++;
	}
	void info() {
		System.out.println("学号是"+stuNo+";姓名是"+name+";年龄是"+age+";性别是"+sex);
	}
	public String toString() {
		return "学号是"+stuNo+";姓名是"+name+";年龄是"+age+";性别是"+sex;
	}
	@Override
	public boolean equals(Object o) {
		Student s;
		s=(Student)o;
		if(this.stuNo.equals(s.stuNo)) {
			return true;
		}
		else return false;
	} 
		
}

  • 7
    点赞
  • 48
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

дорога Hа Cевер

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值