我特别谈到使用静态变量来实现这一点.考虑Java中的以下对象:
public class MyObject{
private static ArrayList<String> ID_List = new List<String>();
private String ID_Number;
public MyObject(){
/* Assign a random number to ID_Number
* And ensure that this is a unique number
* not found in ID_List. Then add it to ID_List. */
}
/* Other methods and such */
}
Run Code Online (Sandbox Code Playgroud)
在某种程度上,这是为了确保每个对象都具有易于访问和可读的独特且有区别的属性.但是,我不确定相同类型的所有对象之间的这种奇怪耦合是否是良好的做法.
因为它让我感到不舒服,所以我倾向于认为这不是一个好主意.以OOP方式思考这个问题的正确方法是什么?