JAVA作业,求大神帮助

1)编程实现:设计一个学生类Student,包含的属性有姓名name和年龄age.由学生类派生出本科生类Undergraduate和研究生类Postgraduate,本科... 1)编程实现:设计一个学生类Student,包含的属性有姓名name和年龄age. 由学生类派生出本科生类Undergraduate和研究生类Postgraduate, 本科生类包含的属性有专业specialty等, 研究生类包含的属性有研究方向studydirection等。每个类都有相关数据的set方法和get方法.
2)声明测试类:声明Student类的数组(含5个元素),生成五个对象存入数组:其中二个Student类的对象、二个Postgraduate类的对象、一个Undergraduate类的对象,打印输出每个对象的某个成员变量。将一个父类的引用指向一个子类对象,用这个塑型后的对象来调用某个方法实现多态性。

给出的程序代码要有详细注释,要有运行结果截图

谁帮我搞定这作业我的分全给他了。。。
展开
 我来答
露井桃D4
2011-04-20 · TA获得超过222个赞
知道小有建树答主
回答量:188
采纳率:100%
帮助的人:104万
展开全部
class Student {
String name;
int age;

public void setName(String name){
this.name=name;
}
public void setAge(int age){
this.age=age;
}
public String getName(){
return name;
}
public int getAge(){
return age;
}
}
class Undergraduate extends Student{
String specialty;
public void setSpecialty(String specialty){
this.specialty=specialty;
}
public String getSpecialty(){
return specialty;
}
public void setName(String newName){ //多态存在的一个必要条件,重写父类的方法
this.name=newName;
}
public String getName(){ //重写父类的方法
return this.name;
}
}
class Postgraduate extends Student{
String studydirection;
public void setStudydirection(String studydirection){
this.studydirection=studydirection;
}
public String getStudydirection(){
return studydirection;
}
}

public class Test3 {

public static void main(String[] args) {
Student st[]={new Student(),new Student(),new Postgraduate(),new Postgraduate(),new Undergraduate()};

st[0].setName("Tom"); //设置名字
st[0].setAge(22);//设置年龄

//打印姓名 ,年龄
System.out.println("姓名:"+st[0].getName()); //这是父类方法
System.out.println("年龄:"+st[0].getAge());//这也是父类方法

st[2].setName("研究生姓名AA"); //st[2],st[3],st[4]都是父类Student的引用指向了子类的对象,这是用父类引用调子类的重写父类的方法
System.out.println("姓名:"+st[2].getName());//还是父类引用指向子类对象,调子类getName()方法。

//因为重复性多,所以就简单写了几个方法,老师考的估计就是父类引用指向子类对象的多态。多态存在的三个必要条件:1.要有继承 2.要用重写。3父类引用指向子类对象

}

}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式