下面的Java代码中有问号的地方怎么理解?

classAnimal{privatevoidbeat(){System.out.println("心脏跳动...");}publicvoidbreath(){beat(... class Animal
{
private void beat()
{
System.out.println("心脏跳动...");
}
public void breath()
{
beat();
System.out.println("吸一口气,吐一口气,呼吸中...");
}
}
class Bird
{

private Animal a; ?????
public Bird(Animal a)
{
this.a = a; ????????
}
public void breath()
{
a.breath();
}
public void fly()
{
System.out.println("我在天空自在的飞翔...");
}
}
展开
 我来答
匿名用户
2014-12-28
展开全部
private Animal a; 做class Bird的属性
public Bird(Animal a)
{ this.a = a; } 通过构造方法把a传进去
更多追问追答
追问
传进去的a就是主函数main()中通过new创建实例对象时所构造的a吗?
追答
对的
匿名用户
2014-12-28
展开全部
Animal是父类,有两个方法,bird是子类,bird继承了animal类,重写了animal的breath方法,并且有一个自己的fly方法。 在bird的构造函数里需要传入一个animal参数,然后将传入参数赋值给bird的私有属性a.
追问
既然a是bird的属性 作为属性他可以调用animal的方法吗
追答
bird继承了animal!!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式