小编gar*_*ndi的帖子

Java中是否有一种"类型安全"的转换形式?

假设我有两个派生自第三个抽象类的类:

public abstract class Parent{
    public Parent(){
    }
}

public class ChildA extends Parent {
    public ChildA {
    }
}

public class ChildB extends Parent {
    public ChildB {
    }
}
Run Code Online (Sandbox Code Playgroud)

在C#中,我可以通过以下方式处理某种类型安全的方式:

ChildA child = obj as ChildA;
Run Code Online (Sandbox Code Playgroud)

如果它不是ChildA类型对象,那么会使child == null.如果我这样做:

ChildA child = (ChildA)obj;
Run Code Online (Sandbox Code Playgroud)

...在C#中,如果类型不正确,则会抛出异常.

所以基本上,有没有办法在Java中进行第一种类型的转换?谢谢.

java casting

30
推荐指数
5
解决办法
3万
查看次数

标签 统计

casting ×1

java ×1