java - 这是计算对象实例的有效方法吗?

标签 java object

这是计算对象实例的有效方法吗?或者我不应该重写finalize?

public class MyClass{
    private int instances;
   public MyClass(){
       instances++;
   }    
   @Override
   public void finalize(){
       instances--;
   }
   public static int getInstances(){
       return instances;
   }
}

解决方案不必是线程安全的

最佳答案

实例标记为静态 volatile 。其次,绝不重写finalize方法。另外,在代码中,请注意,您无法在 public static int getInstances 方法中访问 instances 变量。

关于java - 这是计算对象实例的有效方法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17475022/

相关文章:

java - 日期时间设置为具有特定时区的日历,未在java中提供其他时区的正确转换日期时间

java - 在jsp标签文件的java代码中使用标签属性

python - append(self) 在 Python 类中是什么意思?

javascript - 对于这种特殊情况,哪种 JavaScript 结构的访问时间更快?

java - Spring Data Rest Repository 不会公开删除

java - 给定两个日期范围列表,如何在 java 中找到不重叠的日期

java - 将 java.util.List.sort 与 java.time.LocalDateTime compareTo 方法结合使用

javascript - 从数组返回对象时排除属性?

Javascript 将对象作为函数参数传递

c++ - 如何基于函数参数C++更改对象属性