Java 如何将枚举传递给DTO

Java 如何将枚举传递给DTO,java,enums,dto,Java,Enums,Dto,我正在传递一个DTO,其实例变量之一应为ENUM类型。但是,枚举是在另一个类中定义的,该类创建DTO 简短总结: public class Node { Enum nodeType; <--- should belong Node (Enum nodeType) { this.nodeType = nodeType; } } public class CreateNode { Enum { TEXT_NODE, ATTR_NODE };

我正在传递一个DTO,其实例变量之一应为ENUM类型。但是,枚举是在另一个类中定义的,该类创建DTO

简短总结:

public class Node {
    Enum nodeType; <--- should belong 
    Node (Enum nodeType) {
        this.nodeType = nodeType;
    }
}


public class CreateNode {
   Enum { TEXT_NODE, ATTR_NODE };

   Node returnNode() {
      // return node of Enum TEXT_NODE.
   } 

 }
公共类节点{

枚举节点类型;您需要为
Enum
命名

enum NodeType { // Name of the enum is NodeType
    TEXT_NODE, ATTR_NODE
}
class Node {
    NodeType nodeType; // A field of type NodeType
    public Node(NodeType nodeType) {
        this.nodeType = nodeType;
    }
}
class CreateNode {
    Node returnNode() {
        return new Node(NodeType.TEXT_NODE); // return the TEXT_NODE
    }
}
要获得在其他类/方法中设置了此
NodeType
的节点,可以执行以下操作

// In some class
// In some method
public void someMethod(){
    Node nodeWithEnumType = new CreateNode().returnNode();
    // Other stuffs
}

节点的“收件人”应该如何接收其中一个类型为enum的节点?请查看我编辑的答案,以解释如何实现这一点。
public class Node {
    CreateNode.NodeType nodeType;

    public Node(CreateNode.NodeType nodeType) {
        this.nodeType = nodeType;
    }
}

class CreateNode {
    enum NodeType {
        TEXT_NODE,
        ATTR_NODE
    };

    public Node returnNode() {
        return new Node(NodeType.TEXT_NODE);
    }
}