如何在java中创建我自己的数据类型,它将接受从0到1024的值范围。
我的声明将是。
kilobyte a=10;
可能吗?
No.Java不允许这样做(即创建一个原语)。但是你可以为此创建自己的类。
您不能创建自己的基元,但您可以为此创建一个包装器Object
。
这里肮脏的例子:
// note that class name doesn't follow Java conventions here
public class kilobyte {
private int number;
public kilobyte(Number number) {
if (number == null) {
throw new IllegalArgumentException("argument is null");
}
else if (number.intValue() > 1024 || number.intValue() < 0) {
throw new IllegalArgumentException("argument not within 0 < x < 1024 range");
}
else {
this.number = number.intValue();
}
}
// TODO getter/setter
}
不,您不能创建自己的基元类型,也不能重载运算符,因此这在 Java 中是不可能的。