这背后的原因是什么:
为什么不允许这样做 StringBuffer sb=(String)"Java";
这是允许的 StringBuffer sb=new StringBuffer("Java");
String是仅从Object派生的不可变类.因此,您无法将其强制转换为其他类型
要从a中获取a StringBuffer,String必须StringBuffer使用String作为参数创建一个新实例,constructor如上所述.
Java是一种强类型语言.
这意味着一切都有类型.例如,Strings和Stringbuffers.
演员有两个主要目的.第一个是基元,它们都是数字(布尔除外).这是转换.第二个是对象.唯一的目的是将一个对象强制转换为其子类之一.例如.
Object s = "";
int len = ((String) s).length();
Run Code Online (Sandbox Code Playgroud)
尽管StringBuffer和String可能具有相似的目的,但它们是不相关的