JAVA基础。谁给我举个例子,好一点的关于JAVA的多态。
JAVA基础。谁给我举个例子,好一点的关于JAVA的多态。最好包含继承和封装的,并分别解释一下,谢谢大虾。...
JAVA基础。谁给我举个例子,好一点的关于JAVA的多态。最好包含继承和封装的,并分别解释一下,谢谢大虾。
展开
展开全部
假设有一个类 叫 鸟类,它拥有属性翅膀,拥有方法鸣叫,如下
public class Bird{
private Wing wing;
public void moo(){
System.out.println("鸟叫声");
}
}
鸟类封装了 翅膀类和moo方法;另外有两个类都继承鸟类并重写了moo方法,分别是鹦鹉和麻雀如下:
鹦鹉类:
public class Parrot extends Bird{
public void moo(){
System.out.println("鹦鹉的叫声");
}
}
麻雀类:
public class Sparrow extends Bird{
public void moo(){
System.out.println("麻雀的叫声");
}
}
方法重写应该懂吧,不懂自己找书看吧;然后你有个妻子她想听鸟叫,就有个妻子类
public class Wife{
public void listen(Bird bird){
bird.moo();
}
/*这时多态就很好的体现了,你妻子想听鸟叫,无论什么鸟都可以给她,但是你想让她和鹦鹉
*说话,你就买了一只鹦鹉传给listen方法,结果你妻子听到了鹦鹉的叫声,程序输出:鹦
*鹉的叫声
*/
public static void main(String[] args) {
new Wife().listen(new Parrot());
}
}
多态实现了动态绑定,让程序有了很好的扩展性,比如你以后想买一只燕子送给你妻子,就只需要写个燕子类Swallow继承Bird方法就可以了,而不需要再在妻子类里添加一个方法listen(Swallow swallow)……上面编码没用编译器,可能有错误,请谅解
说得够详细了吧,感谢世界上有我这么好的人吧 ^_^
public class Bird{
private Wing wing;
public void moo(){
System.out.println("鸟叫声");
}
}
鸟类封装了 翅膀类和moo方法;另外有两个类都继承鸟类并重写了moo方法,分别是鹦鹉和麻雀如下:
鹦鹉类:
public class Parrot extends Bird{
public void moo(){
System.out.println("鹦鹉的叫声");
}
}
麻雀类:
public class Sparrow extends Bird{
public void moo(){
System.out.println("麻雀的叫声");
}
}
方法重写应该懂吧,不懂自己找书看吧;然后你有个妻子她想听鸟叫,就有个妻子类
public class Wife{
public void listen(Bird bird){
bird.moo();
}
/*这时多态就很好的体现了,你妻子想听鸟叫,无论什么鸟都可以给她,但是你想让她和鹦鹉
*说话,你就买了一只鹦鹉传给listen方法,结果你妻子听到了鹦鹉的叫声,程序输出:鹦
*鹉的叫声
*/
public static void main(String[] args) {
new Wife().listen(new Parrot());
}
}
多态实现了动态绑定,让程序有了很好的扩展性,比如你以后想买一只燕子送给你妻子,就只需要写个燕子类Swallow继承Bird方法就可以了,而不需要再在妻子类里添加一个方法listen(Swallow swallow)……上面编码没用编译器,可能有错误,请谅解
说得够详细了吧,感谢世界上有我这么好的人吧 ^_^
展开全部
java初学者最好是能有一套比较好的,完整的视频来指引。Siki学院整理了一套java学习视频,适合新手入门,也适合有一些基础的提升自己。这套视频分几个阶段,每一阶段都逐渐加深,此套视频已经整理的非常完善,各位学习者基本上按照此套视频,一阶段,一阶段学习来,肯定会入门,逆袭成为大牛。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
楼下的顶你,不过也太啰嗦啦~~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一楼的回答还是很好的,多看看书,关键在于自己的理解....
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一楼回答的最好了 而且书上的例子基本上是做好的 你还是多看书 多联系吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询