在我的班级AccountService中是静态归档AccountDao,这也是我们需要声明为静态的类我知道这将用于访问
classname.staticfield访问类中的每个位置但是用于其他类对象的用法声明为静态?提前谢谢
<?xml version="1.0" encoding="UTF-8"?>
<book>
<Empid type="number">1</Empid>
<Empname type="string">JSON</Empname>
<Salary type="number">20997.0</Salary>
<coworkers class="array">
<e class="object">
<firstname type="string">john</firstname>
<lastname type="string">wick</lastname>
</e>
<e class="object">
<firstname type="string">albert</firstname>
<lastname type="string">smith</lastname>
</e>
</coworkers>
<manager class="object">
<firstname type="string">hasan</firstname>
<lastname type="string">kahraman</lastname>
</manager>
</book>
答案 0 :(得分:2)
静态成员由类的所有实例共享。在您的示例中,AccountService
的所有实例只能访问一个名为AccountDao
的{{1}}实例。
为什么在你的情况下这样做,我不知道。更糟糕的是,每次创建accountinfo
的新实例时,AccountService
都会再次实例化。这意味着,一旦创建了accountinfo
的另一个实例,旧实例就无法引用accountinfo
的原始对象。
通常,使用静态成员的原因有很多,例如:逻辑(1:n关系),性能(所有对象共享一个资源)。无论原因是什么:小心何时以及如何(重新)实例化静态成员,因为该类的所有对象可能希望在不同时间使用该成员。