java - 断言不按照我在java中的想法工作

标签 java

我是java新手..所以也许这就是为什么我没有得到正确的关键字?

所以..我根据该银行客户示例编写了一个快速类(class)..其中一个方法是取款。

public void withdraw(double d){
        double diff = balance - d;
        assert (diff>=0 ) :" Insufficient funds!";
        balance = diff;
    }

所以我的意图是,如果提款金额大于余额..然后抛出一个错误...(我认为这应该更像是一个异常(exception)....但可以说我想检查这个通过断言)...

但它没有做任何事情..即使当 diff 小于零时..

代码编译得很好..而我期望它会抛出错误。

我做错了什么

最佳答案

默认情况下禁用断言。您可以在调用 JVM 时通过传递 -enableassertions 标志来启用所有断言。

[编辑]

您可以找到 Java 断言编程指南 here 。请注意有关启用和禁用断言的部分。

关于java - 断言不按照我在java中的想法工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14026705/

相关文章:

java - 使用 Mapstruct 作为 JOOQ 的 RecordMapper

java - 字符串输入参数的 SSRF CheckMarx 漏洞

java - 让 SwingWorker 线程 hibernate

java - 对名称 java : comp/env/jdbc/bar 进行间接查找时发生 WebSphere NameNotFoundException

java - 循环执行速度控制

java - Spring boot 上的基本 Controller 给出 404

java - 意外的无限字节循环

java - int 的可变长度编码为 2 个字节

java.text.ParseException : Unparseable date: yyyy-MM-dd HH:mm:ss. SSSSSS 异常

java - 如何将 tradefed FileUtil 依赖项添加到 Android 应用程序中?