有什么区别。
public class Test {
public static void main(String args[]) {
String toBeCast = "cast this string";
A a = toBeCast; // error - Type mismatch: cannot convert from String to A
Object object = toBeCast;
}
}
public class A {
}
当我们说每个对象都扩展Object class
时,为什么不允许A a = toBeCast;
,但是这个Object object = toBeCast;
工作正常。
最佳答案
记住几何课上的那句老话 - “每个正方形都是矩形,但并非每个矩形都是正方形”。将其概括为:“每个正方形/平行四边形/菱形都是多边形,但并非每个多边形都是正方形/平行四边形/菱形”。
这是你正在做的:
String toBeCast = "cast this string" //this rhombus is a rhombus: cool!
A a = toBeCast; //this parallelogram is that rhombus : WTF? that doesn't make sense!
Object object = toBeCast; //this polygon is that rhombus: cool!
关于java - 字符串到对象类型转换 - 区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27052943/