假设我创建了从Circle
类继承的Triangle
和Shape
类。我的问题是如何阻止代码创建Shape
类的实例?
答案 0 :(得分:4)
使Shape类抽象。这意味着它是一个未完成的类,作为提供附加功能的其他类的基础。
例如,如果您有加载数据的服务器类,则可以使用抽象类 DataLoader 和具体类 DatabaseLoader , XmlLoader 。 ..
答案 1 :(得分:1)
赋予Shape一个受保护的构造函数。 Circle和Triangle仍然可以从他们自己的构造函数中调用它们。但其他人不能。
Dante Jinag是Java的权利,我假设是C ++
答案 2 :(得分:1)
您可以将Shape类设为 abstract 。
public abstract class Shape {
//your code
}
答案 3 :(得分:0)
您正在使用哪种编程语言?
通常,对象创建是成员的内存分配和构造函数的调用。如果您的Shape类没有成员 - 则不会分配内存。如果它有空构造函数 - 在这一步也不会发生任何事情。