为了账号安全,请及时绑定邮箱和手机立即绑定

我想输入矩形和圆形的数据然后再输出结果,不知道怎么返回还是怎么,输出的是默认值。


http://img1.sycdn.imooc.com//58d6058700016f1813130560.jpg

http://img1.sycdn.imooc.com//58d605880001bc2608230585.jpg

http://img1.sycdn.imooc.com//58d605880001c3dc08210596.jpg

http://img1.sycdn.imooc.com//58d60589000180ef07010382.jpg

  • 不知道哪里遗漏了。忘大神指出

正在回答

2 回答

main方法有问题:1.你用shuru  new 的圆形对象,但却用shape 父类 new 圆形子类,然后用子类对象jishuan调用方法(但这时候其实你并没有给 圆形对象的 属性赋值)  2.你用shape 父类 new 矩形子类,但没有给矩形属性赋值(这种方法也赋不了值)  。

解决方法:

1.删除shape jushuan = new Circle(); 

shuru.mianji();

shuru.zhouchang ; 

2.Reclangle jushuan2 = new Reclange(); 

jishuan2.a="你输入的值"; 

jishuan2.b="你输入的值";

jishuan2.mianji();

jishuan2.zhouchang();


//PS: jisuan  不是 jishuan

1 回复 有任何疑惑可以回复我~
#1

holy_yakutsk 提问者

我把mian方法中只写了你的【2】。然后还是0.0.。。。要不就是我的计算方法问题。回头补补。。。PS:小师妹还是很受人喜爱的啊)-(
2017-03-25 回复 有任何疑惑可以回复我~
#2

holy_yakutsk 提问者

我搞定了,哈哈,我把double c = a*b;mianji方法里面,然后再直接用类创建对象赋值就可以了, .Reclangle jushuan2 = new Reclange(); 只是不明白为什么用接口对象指定类赋值就不可以, 可能是楼上说的地址不一样吧。 谢谢,打字辛苦了,那位也是
2017-03-25 回复 有任何疑惑可以回复我~

Shape jishuan = new Circle();和Circle shurn = new Circle();中的  jishuan和 shurn指向的地址不是一个地址,你给shurn 这个地址里的变量赋值的时候并不会给jishuan这个地址里的变量赋值


1 回复 有任何疑惑可以回复我~
#1

holy_yakutsk 提问者

原来是这样,地址不一样,谢谢啊
2017-03-25 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

我想输入矩形和圆形的数据然后再输出结果,不知道怎么返回还是怎么,输出的是默认值。

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信