Java 当类的属性之一是枚举变量时,如何实现该类?
我想用Java 当类的属性之一是枚举变量时,如何实现该类?,java,oop,enums,Java,Oop,Enums,我想用状态属性创建节点对象状态属性可以确定为三个枚举变量之一:枚举状态={已访问、未访问、访问} 例如,我想做节点n1;n1.state=state.unvisted在这种情况下,n1是图形中的节点对象。为此,我需要创建一个节点类。状态属性的类型应该是什么 class Node { [type] state; public Node() { // say something about the state } } 您可以创建enum,如下所示: enum
状态
属性创建节点
对象<代码>状态属性可以确定为三个枚举变量之一:枚举状态={已访问、未访问、访问}代码>
例如,我想做节点n1;n1.state=state.unvisted
在这种情况下,n1
是图形中的节点对象。为此,我需要创建一个节点
类。状态
属性的类型应该是什么
class Node {
[type] state;
public Node() {
// say something about the state
}
}
您可以创建enum
,如下所示:
enum State {
Visited,
Unvisited,
Visiting
}
State state;
完成后,可以按如下方式定义属性:
enum State {
Visited,
Unvisited,
Visiting
}
State state;
您可以创建enum
,如下所示:
enum State {
Visited,
Unvisited,
Visiting
}
State state;
完成后,可以按如下方式定义属性:
enum State {
Visited,
Unvisited,
Visiting
}
State state;
国家财产的类型应该是什么
class Node {
[type] state;
public Node() {
// say something about the state
}
}
状态
国家财产的类型应该是什么
class Node {
[type] state;
public Node() {
// say something about the state
}
}
State
您可以在类外部定义枚举,然后在类内部创建该枚举的实例,如下所示
enum State {
Visited,
Unvisited,
Visiting
}
class Node {
State state;
public Node() {
// say something about the state
}
}
您可以在类外部定义枚举,然后在类内部创建该枚举的实例,如下所示
enum State {
Visited,
Unvisited,
Visiting
}
class Node {
State state;
public Node() {
// say something about the state
}
}
创建枚举数据类型:
public enum State {
VISITED,
UNVISITED,
VISITING
}
那么你的班级应该是这样的:
class Node {
State state;
public Node() {
// say something about the state
}
}
类的实例如下所示:
Node node1, node2;
node1 = new Node();
node2 = new Node();
node1.state = State.VISITED;
node2.state = State.UNVISITED;
有关更多阅读信息,请检查此项,或在谷歌上搜索有关枚举的信息,您将找到更多信息。创建枚举数据类型:
public enum State {
VISITED,
UNVISITED,
VISITING
}
那么你的班级应该是这样的:
class Node {
State state;
public Node() {
// say something about the state
}
}
类的实例如下所示:
Node node1, node2;
node1 = new Node();
node2 = new Node();
node1.state = State.VISITED;
node2.state = State.UNVISITED;
如需更多阅读,请查看此内容,或在谷歌上搜索有关枚举的信息,您将找到更多信息。类似于以下内容:
(我已将名称改为大写,因为这是枚举的惯例)
要引用它们,您需要使用import packagename.State对其进行编码State.visitored
代码>
或者仅使用导入静态packagename.State.*的未访问代码>
public class Enum60963806 {
public static enum State {
VISITED,
UNVISITED,
VISITING;
}
public static final class Node {
private final State state;
public Node(final State state) {
this.state = state;
}
}
}
看起来是这样的:
(我已将名称改为大写,因为这是枚举的惯例)
要引用它们,您需要使用import packagename.State对其进行编码State.visitored
代码>
或者仅使用导入静态packagename.State.*的未访问代码>
public class Enum60963806 {
public static enum State {
VISITED,
UNVISITED,
VISITING;
}
public static final class Node {
private final State state;
public Node(final State state) {
this.state = state;
}
}
}
谢谢你@Sujeet Sinha。我是否也应该将State
创建为类?否,创建enum
后,可以使用与属性类型相同的名称。enum
应该在类之外定义。谢谢@Sujeet Sinha。我是否也应该将State
创建为类?否,创建enum
后,可以使用与属性类型相同的名称。enum
应该在类之外定义。