Java 实例化类时引发异常

Java 实例化类时引发异常,java,list,class,constructor,instantiation,Java,List,Class,Constructor,Instantiation,我有一个非常简单的问题- 我有一个名为DEClient的类,其构造函数如下- public DEClient(List<DEKey> keys) { process(keys); } public class DEKey { private String name; private String value; public DEKey(){ name = null; value = null; }

我有一个非常简单的问题-

我有一个名为
DEClient
的类,其构造函数如下-

public DEClient(List<DEKey> keys) {
    process(keys);
}
public class DEKey {

    private String name;
    private String value;

    public DEKey(){
        name = null;
        value = null;
    }

    public DEKey(String name, String value){
        this.name  = name;
        this.value = value;
    }

    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }

    public String getValue() {
        return value;
    }
    public void setValue(String value) {
        this.value = value;
    }
}
现在我尝试实例化
DEClient
构造函数。因此,我需要有
列表

因此,我所做的是使用
service.getKeys()
(它将返回
String
)和
id
作为值来实例化
DEKey
类,如下所示

DEKey dk = new DEKey(service.getKeys(), id);

//The below line throws exception whenever I am running.
DEClient deClient = new DEClient((List<DEKey>) dk);
DEKey-dk=new-DEKey(service.getKeys(),id);
//每当我运行时,下面的一行就会抛出异常。
DEClient DEClient=新的DEClient((列表)dk);

我在这里做错了什么?

您需要先创建一个
列表
,然后将您的密钥添加到该
列表
。像您这样进行强制转换是不合适的,因为
DEKey
不是一个
列表
,对它进行强制转换将抛出一个
ClassCastException

DEKey dk = new DEKey(service.getKeys(), id);

List<DEKey> list = new ArrayList<DEKey>();
list.add (dk);

DEClient deClient = new DEClient(list);
DEKey-dk=new-DEKey(service.getKeys(),id);
列表=新的ArrayList();
list.add(dk);
DEClient DEClient=新的DEClient(列表);

什么是
bk
(不是
dk
)以及显式演员阵容是什么(如果
bk
列表,就不需要显式演员阵容了)?@a--C,哎呀,编辑代码时,我忘了编辑一个单词。我刚刚用dk更新了代码。错误地,它是
dk
。很抱歉。在提交之前你有没有阅读过你的代码
dk
是一个
DEKey
,您为什么要将其放入
列表中??