java - 在Java中,“this”在构造函数中是否可以为null?

标签 java

在构造对象时,它可以为null吗?

class Sample {
  public Sample() {
      if( this != null ) { // Is this check necessary anywhere in the constructor?
        this.doSomething();
      }
  }
 ....
 ....
}

最佳答案

this不会为空-但是,如果您从构造函数调用非最终实例方法,则应该彻底记录该文档,因为尚未运行任何子类构造函数。这意味着如果doSomething()在子类中被覆盖,它将看到该子类中声明的任何字段的默认值(其中默认值是该类型的默认值,而不是变量初始值设定项可能显示的内容)。基本上值得尝试避免在构造函数中调用非最终实例方法。

关于java - 在Java中,“this”在构造函数中是否可以为null?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7470303/

相关文章:

java - 如何使 spring-boot 应用程序访问不同范围的数据库的不同配置?

Java 正则表达式讨论

java - Eclipse 插件 - 如何在命令处理程序的构造函数中注入(inject) IWorkbenchWindow

java - Azure + SpringBoot 'com/fasterxml/jackson/core/JsonFactory'

java - 包含其他对象集合的对象的 JAXB 解码问题

java - 使用 maven-bundle-plugin 包含来自 Spring XML 的依赖项

java - 如何使用域名访问azkaban Web界面?

java - 当我使用 GWT 单击另一个表时,如何选择一个数据网格中的行?

java - JDBC COUNT()某一行如何得到结果

java - SIGAR api 抛出 NoClassDefFoundError