对一个看似简单的问题疑惑不解,希望有大牛可以解答详细原理:
代码如下:
[code="java"]
String a = "javaeye";
String b = (String)a;
[/code]
[list]
[*]不知道这样做是否会发生强制类型转换?
[*]
[*]如果会发生,是否和不同类型间(如继承关系)的强制类型转换步骤一致?
[/list]
多谢了。
[b]问题补充:[/b]
那么这样会强制类型转换吗?
[code="java"]
public class Simple
{
private T type;
public T getType()
{
return type;
}
@SuppressWarnings("unchecked")
public <M> void setType2(M type)
{
this.type = (T)type;
}
public static void main(String[] args)
{
String typer = "vvvvvvv";
Simple<String> aSimple = new Simple<String>();
aSimple.setType2(typer);
}
}
[/code]
这样会发生强制类型转换吗?