List<子类>可以向上转型成List<父类>吗?

 


        List<ColumnDto> columnDtoList=  mapper.findMergeColumn();
        List<Column> updateList=columnDtoList.stream()
                .filter(o->o.getState()==1).collect(Collectors.toList());

        

俩个类的关系;

public class ColumnDto extends Column {
    private int state;

    public int getState() {
        return state;
    }

    public void setState(int state) {
        this.state = state;
    }

}
public class Column{

    private Integer id;

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }
}

如上,我想将 List<ColumnDto> columnDtoList 转换成  List<Column> updateList,后续直接进行  jpa  修改操作,

可以用 BeanUtils.copyProperties(); 进行对象转换,或者List.foreach ->向上转型

但是我在想这俩个类不是父子继承关系吗,可以直接用List接收的时候默认向上转型吗?

希望大佬捎带讲解一下相关知识点

不能直接转换,你可以在写代码的时候使用List<T extends ColumnDto>来解决这个问题


希望对你有帮助:https://blog.csdn.net/it_xiangqiang/category_10581430.html
希望对你有帮助:https://blog.csdn.net/it_xiangqiang/category_10768339.html