开学这些天了,老师讲的东西也是马马虎虎,决定在学习新知识 之余 自己慢慢的学习下前面的知识 让自己更容易理解老师讲课中涉及到的知识,
或许这要和老师的教学反其道而行了,或许我只有这样了,不然前面的总是不会 后面的越讲越多 慢慢就没有信心了!所以决定 遇到事情自己就慢慢研究 查资料等等 把落下的知识慢慢补回来。
今天 在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 是父类的对象,但是它是子类的方法!
思路还是很混乱,请高手指点下....