我曾多次被告知永远不要做以下事情:
Dog dog = new Dog();
Entry entry = new Entry();
//etc...
请注意 Type
如何/Object
名字是 Dog
和 variable
名字是 dog
。做这样的事情真的被认为是糟糕的编程,还是只是不受欢迎?这如何导致其他人阅读您的程序时可读性较差?
感谢您的澄清。
最佳答案
这本身并不是一个坏主意,但它实际上取决于对象的含义。我会用一个例子来说明:
class Engine {
}
class Car {
private Engine engine;
}
您可以在这里看到,命名实例变量 engine
不会对可读性产生任何影响。 汽车
有一个引擎
,在这种情况下,类的名称和实例变量的名称不会产生任何问题。
但考虑另一个例子:
class Point {
}
class Circle {
private Point point;
}
在这里您可以看到为什么这在所有情况下都不是一个好主意。一个圆
有一个点
,称为点
。很好,但是这一点是什么?仅仅将其称为“点”对于读者来说并不能提供任何信息。也许center
会更合适。
通常,类名代表该类型的所有可能对象的集群。这意味着它的名称通常是通用的。这意味着一般来说,拥有与对象同名的实例变量应该不足以提供足够的信息,当然,在某些情况下,您需要理解的所有内容都可以从上下文中推断出来(请参阅Car
) > 示例),但您应该真正考虑具体情况。
关于java - 变量名与对象类型相同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19759545/