150 - 教师类

本文详细介绍了如何设计并实现一个教师类,包括属性定义、get和set方法的创建,以及equals和toString方法的重写。通过具体示例展示了输入教师信息、比较教师对象以及输出教师信息的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

150 - 教师类

Time Limit: 1000   Memory Limit: 65535
Submit: 501  Solved: 286

Description

设计一个教师类Teacher,要求:
属性有编号(int no)、姓名(String name)、年龄(int age)、所属学院(String seminary),为这些属性设置相应的get和set方法。
为Teacher类重写equals方法,要求:当两个教师对象的no相同时返回true。
重写Teacher类的toString方法,通过该方法可以返回“no: **, name:**, age: **, seminary: **”形式的字符串。

Input

两个教师对象的编号,姓名,年龄,学院

Output

教师的信息
两个教师是否相等

Sample Input

1 Linda 38 SoftwareEngineering
2 Mindy 27 ComputerScience

Sample Output

no: 1, name:Linda, age: 38, seminary: SoftwareEngineering
no: 2, name:Mindy, age: 27, seminary: ComputerScience
false

 

import java.util.*;
public class Main
{
	public static void main(String[] args)
	{
		Scanner scan = new Scanner(System.in);
		int n1 = scan.nextInt();
		String na1 = scan.next();
		int a1 = scan.nextInt();
		String s1 = scan.next();
		Teacher t1 = new Teacher(n1,na1,a1,s1);
		int n2 = scan.nextInt();
        String na2 = scan.next();
        int a2 = scan.nextInt();
        String s2 = scan.next();
        Teacher t2 = new Teacher(n2,na2,a2,s2);

        System.out.println(t1.toString());
        System.out.println(t2.toString());
        System.out.println(t1.equals(t2));
	}
}
class Teacher
{
	int no;
	String name;
	int age;
	String seminary;
	Teacher(int no, String name, int age, String seminary)
	{
		this.no = no;
		this.name =  name;
		this.age = age;
		this.seminary = seminary;
//		setNo(no);
//        setName(name);
//        setSeminary(seminary);
//        setAge(age);
	}
	public void setNo(int no) 
	{
        this.no = no;
    }

    public void setName(String name) 
    {
        this.name = name;
    }

    public void setAge(int age) 
    {
        this.age = age;
    }
    public void setSeminary(String seminary) 
    {
        this.seminary = seminary;
    }
    public String getName() 
    {
        return name;
    }
    public int getNo() 
    {
        return no;
    }

    public int getAge() {
        return age;
    }
    public String getSeminary() 
    {
        return seminary;
    }
    public boolean equals(Object o)
    {
    	if(o == null)
    		return false;
    	else
    	{
    		boolean res = false;
            if(o instanceof Teacher)//o是否是一个Teacher类
            {
                Teacher t = (Teacher)o;
                if(this.no == t.no)
                {
                    res = true;
                }
            }
            return res;
    	}
    }
    public String toString()
    {
    	return "no: "+getNo()+", name:"+getName()+", age: "+getAge()+", seminary: "+getSeminary();
    }
}

 

一、实验目的 掌握根据实际需求设计Java的方法; 掌握Java中继承的使用方法; 掌握Java中package的概念和使用方法; 掌握静态方法的定义和使用方法; 掌握Object中equals方法和toString方法的覆盖方法。 二、实验内容 1、设计一个名为figure的图形软件包(package)。包中包含三角形、矩形、圆三个。要求:(1)每个都要构造方法并为成员设置get和set方法;(2)每个都要有计算周长和面积的成员方法;(3)完成该软件包后的编码后,在另一个包的含有main方法的中编写代码,分别使用图形软件包中的三个,生成三个对象,并打印出其周长和面积。 2、编写Factorial,为其添加两个静态方法(方法名自定义)。其中一个使用递归计算n的阶乘,一个使用非递归计算n的阶乘。构造main方法进行测试。 3、按照要求使用Java进行编码。 设计一个教师Teacher,属性有编号(no)、姓名(name)、年龄(age)、所属学院(seminary),为这些属性设置相应的get和set方法; 为Teacher重写equals方法;(当两个教师对象的no相同时返回true) 重写Teacher的toString方法,通过该方法可以返回“编号为**、姓名为**、年龄为**的**学院老师”形式的字符串。 构造main方法进行测试。 4、设计一个带表头的单链表(链表中的元素属于同一对象,但对象的可以随意),提供以下操作:(1)insert:在某个位置插入对象;(2)delete:在某个位置删除对象;(3)delete:删除链表中与x相同的元素;(4)size:返回当前链表中对象的个数;(5)isEmpty:判断链表是否为空;(6)traverse:遍历链表,打印出所有的元素;(7)getData:取得某个位置的对象。构造main函数进行测试。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值