是否可以在 java 中创建我自己的原始数据类型.像整数,浮点数,双精度



如何在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 中是不可能的。

最新更新