java 定义枚举_如何用JAVA定义枚举类型的类

我想定义一个类,只有一个类型。

此类型可能是类型A,也可能是类型B。

For example:

Type address= A | B

请问如何定义?

下面是我对固定类型定义的类

class ADDRESS{

HashMap m;

public ADDRESS(){m= new HashMap;}

}

也就是说, 如果m可能是其它类型,比如说HashTable,

如何定义?

|

这个AddressEnum类是不是你想要的?AddressEnumTest是测试类。在j2sdk1.4.0 ,WINDOWS2000 ,JCreator Pro 2.5 调试通过。

import java.util.HashMap;

import java.util.Hashtable;

import java.util.Map;

public class AddressEnum{

private HashMap hm = new HashMap();

private Hashtable ht = new Hashtable();

public AddressEnum(){}

public setHashMap(Map m){

this.hm.putAll(m);

}

public setHashtable(Map t){

this.ht.putAll(t);

}

public HashMap getHashMap(){

return hm;

}

public Hashtable getHashtable(){

return ht;

}

}

import java.util.HashMap;

import java.util.Hashtable;

import java.util.Map;

public class AddressEnumTest{

public static void main(String args[]){

HashMap hm = new HashMap();

Hashtable ht = new Hashtable();

AddressEnum ae = new AddressEnum();

hm.put("001","HashMap001");

ht.put("101","Hashtable101");

ae.setHashMap(hm);

ae.setHashtable(ht);

System.out.println(ae.getHashMap());

System.out.println(ae.getHashtable());

}

}

|

错了,下面才对。

public class AddressEnum{

public static final AddressEnum AddressA = new AddressEnum("A");

public static final AddressEnum AddressB = new AddressEnum("B");

private String address;

private AddressEnum(String address){

this.address = address;

}

public String toString(){

return address;

}

}

|

java 没有枚举类型,你只能把它定义为静态常量

|

用抽象类不行吗?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值