我只是使用Eclipse的“使用字段生成构造函数”功能,它为我提供了以下构造函数:

public Credentials(String userName, String password) {
    super();
    this.userName = userName;
    this.password = password;
}


Credentials类没有显式扩展另一个类,所以我想它扩展了Object
super();调用有什么用处?

最佳答案

如果要将构造函数定义为:

public Credentials(String userName, String password) {
    this.userName = userName;
    this.password = password;
}


然后,无论如何编译器都会向超类构造函数添加隐式调用,因此这对编译后的代码没有任何影响。


Credentials类没有显式扩展另一个类,因此它扩展了我猜为Object的对象。什么是super();通话好吗?


但是您的类隐式扩展了Object,因此将对Object()进行调用。

关于java - 在构造函数中调用super(),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22374323/

10-13 09:26