我是编程新手,对类(class)有一些疑问。
我将以卡雷尔为例:
public class Karel extends robot{
....
}
然后我扩展卡雷尔:
public class SuperKarel extends Karel{
....
}
但后来我想组织一些方法组:
public class KarelJumps extends SuperKarel {
....
}
public class KarelColor extends SuperKarel {
....
}
但是如果我想让卡雷尔跳跃,我必须创建一个实例
KarelJumps
而不是 SuperKarel
。但是因为 KarelJumps
是一个不同的对象然后
KarelColor
我不能使用它的任何方法。那么我会不会把所有的
KarelJumps
和 KarelColor
方法在
SuperKarel?
中我是否只制作一个大对象? 最佳答案
扩展类的最有用的原因是,您可以在新对象中使用底层类的功能,然后添加新类型独有的行为和特征。如果没有令人信服的理由这样做,而且经常没有,那就不要这样做。不要让你的设计过于复杂,只是为了尝试利用多态和继承。
您希望使用这些技术使您的应用程序不那么复杂而不是更复杂。对于一个新的程序员,我建议你拿到《代码完成》这本书,让它成为你的圣经一段时间。你不会从它本身学习一门语言,但你会了解事情应该如何做以及为什么这样做。
关于java - 理解类,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1159166/