课程: Programming Foundations: Design Patterns
今天就学习课程吧!
今天就开通帐号,24,100 门业界名师课程任您挑!
Limitations of inheritance
- [Instructor] What we really need at this point is an example to demonstrate the problems with inheritance, so let's take a look at a class design for a duck simulator. Let's say we want to design a duck simulator. To do that we need a set of Duck classes. It would be natural to think that you could start with a Duck superclass. You might give the superclass a quack method and a swim method because those are the things that you'd guess all ducks are going to want to do. Let's also give it a display method. But we'll keep that abstract meaning each subclass will need to implement it because each duck will want to implement its own unique appearance. Now because display is abstract, that makes our duck class abstract too meaning that we cannot instantiate a duck directly. To create a duck, we need some concrete classes. Let's add a concrete class MallardDuck and implement its display method so it looks like a mallard.…
随堂练习,边学边练
下载课堂讲义。学练结合,紧跟进度,轻松巩固知识。
内容
-
-
-
-
Revisiting inheritance1 分钟 30 秒
-
(已锁定)
Limitations of inheritance4 分钟 18 秒
-
(已锁定)
Trying interfaces2 分钟 28 秒
-
(已锁定)
Get inspiration from design principles3 分钟 37 秒
-
(已锁定)
Programming to an interface1 分钟 32 秒
-
(已锁定)
Applying the principles4 分钟 36 秒
-
(已锁定)
Exploring the strategy pattern1 分钟 59 秒
-
(已锁定)
Why HAS-A is better than IS-A2 分钟 4 秒
-
(已锁定)
Challenge: The Strategy pattern2 分钟
-
(已锁定)
Solution: The Strategy pattern46 秒
-
-
-
-
-
-
-