如何在继承类中禁用多态?

时间:2018-11-13 09:13:23

标签: jackson polymorphism

我有以下课程:A> [B1,B2]> C,自定义解析器和反序列化器(根据属性进行决策非常简单)

@JsonTypeInfo(use = JsonTypeInfo.Id.NONE)
@JsonSubTypes({
        @Type(name = "b1", value = B1.class),
        @Type(name = "b2", value = B2.class)})
@JsonTypeResolver(CResolver.class)
public abstract class C<T> {
     // ...
}

class A extends B1 {
    // ...
}
A obj = new ObjectMapper().readValue(json, A.class); 
// I get exception: java.lang.ClassCastException: B1 cannot be cast to C

我想禁用多态性,可以通过一些注释来做到吗?

0 个答案:

没有答案