在SimpleApp教程中,作者将他所有的代码放在一个类文件中。使雨水和水桶在其中。
我尝试只获取代码并将其放入另一个类,但是我的代码中会有重复的方法,从逻辑上讲它是不正确的。例如,我不能在一个游戏中拥有两个创建方法。
我如何将教程中的雨水或水桶放入不同的班级?
这很简单:您可以从 OOP 风格的编码中受益:
只需使用一个包含所有方法的超类RainBucket
,每个方法的代码最少。
从这个超类扩展其他两个类并在其中覆盖您的类想要使用的方法,这样您将完成以下 OOP 规则:
继承:当您从超类派生其他两个对象时:
class Bucket extends RainBucket {
class Rain extends RainBucket {
多态性:您可以从同一个超类声明两个对象,但是通过将两个不同的派生类分配为如下值:
RainBucket bucket = new Bucket()
和
RainBucket rain = new Rain()