基于人类(Person)定义教师类(Teacher),定义测试类验证类的继承特性,理解方法重写和super关键字的使用,具体要求如下: [br][/br] (1)定义公有类人类(Person),定义属性nationality描述国籍,定义属性name描述人的姓名;定义方法show()用于输出人的详细信息;定义方法eat(),用输出语句描述人要吃饭的行为;定义2个参数的构造方法,用于为两个属性初始化; [br][/br] (2)定义Teacher类从Person类继承,定义新的属性course描述教师主讲课程;定义1个参数的构造方法为姓名设置初值(国籍则默认为“中国”);改写show()方法,用于输出教师详细信息(国籍和姓名通过调用父类的show方法输出);定义一个新方法teach(),用输出语句描述教师的授课行为; [br][/br] (3)编写测试类(类名以姓名拼音加作业序号命名),在主方法中创建Teacher类的对象,为属性赋值,并调用方法。
举一反三
- 基于人类(Person)定义学生类(Student),具体要求如下: (1)定义公有类人类(Person),定义属性nationality描述国籍,定义属性name描述人的姓名;定义公有方法show()用于输出人的详细信息;定义方法sleep(),用输出语句描述人需要睡觉;定义2个参数的构造方法,用于为两个属性初始化; (2)定义公有类Student类从Person类继承,定义新的属性studentId描述学号,定义新属性score描述学生的成绩;定义3个参数的构造方法,用于为学生的学号、国籍、姓名初始化(在构造方法中首先调用父类构造方法为继承的属性赋值);定义新的方法study(),用输出语句描述学生的学习行为;改写show()方法,用于输出学生的详细信息(国籍和姓名通过调用父类的show方法输出);[br][/br] (3)编写测试类,在主方法中创建Student类的对象,为属性赋值,并调用方法。
- 按要求完成类的定义、对象创建与引用: (1)定义一个Teacher类,描述教师的姓名(name),系部(department),课程(course),并对属性进行封装;定义一个无参构造方法和一个3个参数的构造方法,无参构造方法不执行任何语句,3个参数的构造方法分别为三个属性进行初始化;定义一个方法showInfo()用于输出教师详细信息; (2)定义一个程序类,在main方法中创建Teacher类的两个对象(t1,t2),t1是无参构造方法的构造对象, t2是带参构造方法的构造对象;为t1对象的属性赋值;分别调用t1、t2对象的showInfo()方法输出教师对象的详细信息;
- 定义父类Person,成员变量name和age,成员方法show()输出成员变量的值,getXxx和setXxx方法。 定义子类Teacher特有属性为主讲课程(lesson),特有方法为teach()输出“我讲授Java语言课程”,getLesson和setLesson方法。 定义TestSubPerson测试类,分别创建Person、Teacher类的对象,设置对象的属性的值,输出对象属性的值,教师对象调用teach方法。
- 编写程序。 (1)定义一个矩形类,属性包括长和宽属性,在构造方法中将长和宽初始化。定义方法show在屏幕上输出长和宽的值。 (2)定义一个测试类,创建矩形类的对象,并调用show()方法输出属性的值
- 编写一个类Animal,描述动物的属性和行为,通过继承Animal类定义Bird类、Fish类,分别描述鸟类和鱼类的属性和行为,具体要求如下: (1)Animal类定义属性name、color、footNumber,描述动物的名称、颜色、脚的只数;定义成员方法showInfo(),用于输出动物的属性信息;定义成员方法move(),用于描述动物如何行走(输出“可以通过飞、跑、游等方式移动身体”); (2)通过继承Animal定义Bird类,改写父类的move方法(输出“通过飞来移动身体”),增加一个方法nest()用于描述在哪里筑巢; (3)通过继承Animal定义Fish类,改写父类的move方法(输出“通过游来移动身体”),增加一个属性length,用于描述鱼的身长,改写父类的showInfo()方法,除了输出name、color、footNumber属性,还要输出鱼的身长; (4)编写测试类,分别创建上述3个类的对象,并给对象的所有属性赋值,调用对象的所有方法。