这周也是我在学习Java道路上的第五周了,在这一周里并没有学太多新的东西,更多的还是复习了之前所学的东西,在Java这几周的学习中更多的不懂的地方还是集中在面向对象那几章节,尤其是面向对象的三大特点封装,继承和多态。这几部分刚开始看感觉还可以看懂一点,越看越看不懂,
有时候多态和继承的区别与联系还是不太清楚。有时候在看一个例子的时候觉得是继承方面的知识吧,结果是多态方面的知识,就感觉区分不出来,所以我又去查看了一下这方面的知识,又做了一些总结。
继承的基本思想是基于某个父类进行拓展,得到一个新的子类。子类可以继承父类原有的属性和方法,也可以增加父类原本所不具有的属性和方法,或者可以直接重写父类中的某些方法。
多态是在继承的基础上才可以实现的。可以说没有继承就没有多态,多态还有以下两个特点
子类必须要对父类中的方法进行重写
通过父类的引用调用重写的方法
多态在代码运行时由于传入的参数不同,调用的类也不同。
通过继承来实现不同类的不同行为,在继承的子类中需要重写父类中的方法,然后再main中实现不同的行为。
多态可以降低代码的复杂程度使代码看起来更加清晰。缺点就是代码运行的效率低了一点,因为复杂的代码拆分成简单的代码,会增加代码量。