00:00
好了,同学们,那还有一波同学呢,可能是有什么疑问呢,我说一下啊。就是说老师我这个在写代码的时候,什么时候我继承呢。就是我什么时候去继承。有这样一个问题。第二个问题啊,就是说在实际开发中。满足什么条件的时候?我可以使用继承的。注意啊,凡是采用。能描述。啊,都可以继承。例如cat ISA animal。Dog is a。
01:01
Animal credit account ISA account。什么意思啊,就是说猫对吧,是一个动物。是一个明白吧,狗啊,是一个动物。啊,这叫信用卡账户。是一个银行账户。是不是,哎,就是这样的啊,所以说大家呢,以后的一个衡量标准,在实际开发中,我们就是我这里啊,能不能用这个extend去继承呢,那就要看你这块啊,能不能用的方式进行描述,如果你能用方式描述的话,那你就可以产生继承,没问题啊,没问题。当然这是从这个从这个描述方面出发。啊,从这个描述啊,语言描述方面出发啊,如果从代码方面出发的话,首先的话,你这个代码啊,确实是有必要去继承。
02:08
啊,就像我们之前写过的一个account和这个credit account一样,它这里呢,确实出现了很多重复的代码,那么我们可以将其中一个类作为父类子类呢去继承它。啊得类聚继承它,那但反过来说各位啊,大家要注意,如果说将来啊,你有一个A类啊和B类。你确实也产生了公共代码。但是你不能用一二的方式去描述。不建议你产生继承。不建议你产生集成啊,这里呢,我给大家强调一下啊。假设啊,以后的开发中。有一个什么呀,A类啊,有一个什么呀,B类,A类和B类确实也有重复的代码。
03:02
那么。他们两个之间就可以继承吗?不一定,还是要看一看。他们之间是否能够使用is a来描述?就是说你比如说你这里可能写了一个什么呀,哎,Class。这class呢,叫customer。这个customer里边有个name这样的一个属性。然后再来一个product product是个商品,商品的它也有一个什么呀,哎,Name的一个属性,这都是name啊对吧,这是名字吧,这是不是名字啊,对不对,哎,这是顾客的名字吧,啊这个是什么呀,是商品的名字,那你这里呢,可能会有the and,那什么啊,Get,然后这边呢,可能也会有什么呀,Set and get方法重复了,那就认为说来吧,写个class product,然后extend继承customer,好,我问大家这是。
04:12
从伦理上啊,我们就已经给他推翻了啊,说不商品商品继承什么呀,我们的卡说商品是一个客户。啊,或者客户是一个商品,商品是这说不通。啊,说不通各位啊,说不通,所以像这个继承就属于很失败的啊,以上的继承就属于什么呀,哎,很失败的。因为product ISA。是有为。这个说不通啊。是不是啊,所以这块呢,大家注意就是以后就反正有也也是确实是有这样的一个疑问,就是继承,这个是我知道继承,知道继承,但以后我什么情况下我继承。
05:09
首先第一个我觉得你确实产生了重复的代码,第二个就是采用is a的关系能描述清楚。啊的观,比如cat ISA animal dog ISA animal credit account ISA account是不是哎,能描述清楚的,我们才会采用继承的一种方式啊,继承的一种方式。好了,这是我们今天说的第二点,第一点我再强调一下啊,子类继承父类之后,能使用子类对象调用父类的方法吗?啊,这个写上啊可以啊,因为子类继承了父类之后,这个方法就属于谁了,属于子类了啊,当然可以使用什么呀,子类对象来调用啊,没有任何问题。
我来说两句