gpt4 book ai didi

java - 为什么有些带参数的构造函数仍然调用this()?好像什么也没做?

转载 作者:太空宇宙 更新时间:2023-11-04 12:24:53 24 4
gpt4 key购买 nike

以下代码来自1.8版本的LinkedList.java。我不明白为什么调用 this() ?构造函数 LinkedList() 似乎什么也没做?

/**
* Constructs an empty list.
*/
public LinkedList() {
}

/**
* Constructs a list containing the elements of the specified
* collection, in the order they are returned by the collection's
* iterator.
*
* @param c the collection whose elements are to be placed into this list
* @throws NullPointerException if the specified collection is null
*/
public LinkedList(Collection<? extends E> c) {
this();
addAll(c);
}

最佳答案

你是对的。它什么也不做。空构造函数调用super()默认情况下。没有this()第二个构造函数也会调用super()默认情况下。我的猜测是 LinkedList() 中曾经进行过一些初始化并调用this() ,此初始化也用于 LinkedList(Collection<? extends E> c) 。现在它是无用且无害的剩余物。

关于java - 为什么有些带参数的构造函数仍然调用this()?好像什么也没做?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38478876/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com