有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java使用JSR303在派生类中提供更具体的约束

假设有一个类Money,它有字段amount和currency:

class Money {
    private int amount;
    @NotNull Currency currency;
}

虽然Price也是货币,但它引入了额外的限制:金额不能为负

class Price extends Money {
    // add more specific constraint for amount field: @Min(0)
}

是否可以使用JSR-303来表达这一点


共 (1) 个答案

  1. # 1 楼答案

    引入属性级别约束应该可以做到这一点:

    class Price extends Money {
    
        @Min(0)
        int getAmount() {
            return super.getAmount();
        }
    
    }