java练手小程序_java类的继承练习(一个小程序)

一、程序功能:通过LX3_7_P类产生子类LX3_8,其不仅具有父类的成员变量xm(姓名)、xh(学号),还定义了新成员变量xy(学院)、xi(系)。在程序中调用了父类的print方法,同时可以看...

一、程序功能:通过LX3_7_P 类产生子类LX3_8, 其不仅具有父类的成员变量xm (姓名)、xh( 学号),还定义了新成员变量xy(学院)、xi(系)。在程序中调用了父类的print 方法,同时可以看出子类也具有该方法。

下面是我想的代码:

public class LX3_7{

public static void main(String args[]){

LX3_7_p ss=new LX3_7_p("dd",34);

System.out.println(ss.print());

LX3_7_p sn=new LX3_8("aa",34,"bb","cc");

System.out.println(sn.print());

System.out.println(sn.prin());

}

}

class LX3_7_p{

String xm;

int xh;

LX3_7_p(){}

LX3_7_p(String xm,int xh)

{

this.xm=xm;

this.xh=xh;

}

String print(){

return "姓名:"+xm+"学号:"+xh;

}

}

class LX3_8 extends LX3_7_p{

String xy;

String xi;

LX3_8(String xm,int xh,String xdy,String xdi){

this.xm=xm;

this.xh=xh;

xy=xdy;

xi=xdi;

}

String prin(){

return "姓名:"+xm+"学号:"+xh+"学院:"+xy+"系:"+xi;

}

}

出错说明:

菜鸟我认为在父类LX3_7_p中既然定义了print();方法,那么LX3_8继承LX3_7_p,在子类LX3_8中的print();方法只能显示“姓名”“学号”两个变量,无法显示出“学院”“系”另外两个变量,故在子类LX3_8又定义了prin();方法,可是程序编译不能通过。

实际上我把子类LX3_8中的print();方法修改为:String print(){

return "姓名:"+xm+"学号:"+xh+"学院:"+xy+"系:"+xi;

}

再把System.out.println(sn.prin());注释,程序是对的。

可是大虾我就是想问各位高人在不修改子类print();方法的前提下,另外定义了一个prin();为什么不行,是不是引用出错了?

谢谢。

prin();前加public不顶用啊

展开

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值