【问题标题】:Why does StringBuffer allows StringBuffer as argument to its constructor even when StringBuffer doesn't have a StringBuffer constructor?为什么 StringBuffer 允许 StringBuffer 作为其构造函数的参数,即使 StringBuffer 没有 StringBuffer 构造函数?
【发布时间】:2017-05-13 10:42:15
【问题描述】:
为什么下面的行没有给出编译时错误?
StringBuffer sb = new StringBuffer(new StringBuffer());
我进行了足够的在线搜索,但找不到原因。不仅如此,它还允许 StringBuider 参数
StringBuffer sb2 = new StringBuffer(new StringBuilder());
请有人帮帮我。
【问题讨论】:
标签:
java
string
stringbuilder
stringbuffer
【解决方案1】:
因为StringBuffer 和StringBuilder 实现了接口CharSequence,而StringBuffer 具有该接口的构造函数。