您的位置:首页 > 编程语言 > Java开发

浅浅的谈 Java 多态的问题

2011-09-19 17:37 197 查看
开学这些天了,老师讲的东西也是马马虎虎,决定在学习新知识 之余 自己慢慢的学习下前面的知识 让自己更容易理解老师讲课中涉及到的知识,

或许这要和老师的教学反其道而行了,或许我只有这样了,不然前面的总是不会 后面的越讲越多 慢慢就没有信心了!所以决定 遇到事情自己就慢慢研究 查资料等等 把落下的知识慢慢补回来。

今天 在UML中涉及到了 多态,不是很明白 或者说都不知道什么是多态。 现在我用我自己理解的知识说下什么是多态, 多态我理解的意思就是 父类中的方法要在子类中 改写 也就是 没有用到子类时,父类或许就是一个空方法,但是如果在子类中用到这个方法 直接在子类中 改写这个方法,以满足子类的需要。

或许别人看起来我讲的也不是很理解,我是这么想的,多态是不是在父类中定义的一个方法,在这个父类的子类中可以以各种形式改写? 下面我自己像个例子来说下,也请高手指点下..

 

例子:

class Parent{//作为父类

public void drink(){
System.out.println("爸妈喝酒");
}

}

class Child extends Parent{//子类
public void drink(){
System.out.println("孩子喝奶");
}
}

public class A{//测试类
public static void main(String[] args){
/*
父类本身产生的结果
*/
Parent p1 = new Parent();
System.out.print("父类本身产生的结果:");
p1.drink();

/*
子类本身产生的结果
*/
Child p2 = new Child();
System.out.print("子类本身产生的结果:");
p2.drink();

/*
通过多态产生的结果
*/
Parent p3;
p3= new Child();
System.out.print("通过多态产生的结果:");
p3.drink();
}
}


这里面的 p3 是父类的对象,但是它是子类的方法!

思路还是很混乱,请高手指点下....
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java class uml string 测试