Chttp://java.sun.com/j2se/1.4.2/docs/guide/lang/assert.html#intro

解决方案 »

  1.   

    哦,我怎么连编译都不能通过。你的jdk版本是多少?
      

  2.   

    应该是D吧,我也不知道会不会继续执行,如果像楼上所说,那就是D
    在测试阶段加入这种检查,而在发布阶段自动删除这些东西因为X=0肯定不会>0,那么,他看定会抛出一个AssertionError 
    使用了断言机制后,编译时要加上 -source 
    而执行时要加上 -enableassertions
      

  3.   

    错了 使用了断言机制后,编译时要加上 -source 1.4 才对
      

  4.   

    断言:为了判断一些条件是否成立,如果不成立则抛出断言失败,成立的话程序继续运行断言是为了调试用的,因为实际的输出比如System.out.println("")是比较浪费时间的,而且调试的信息一般我也不希望用户可以看到。所以当我软件发布的时候不希望有这种输出存在,只希望他们在调试的时候存在。但是如果我软件发布的时候一条一条的去掉那些输出是很费力的,断言提供给你一种解决方法。
      

  5.   

    谢谢 lionqun(学海无涯) 指点,运行结果是finished。
      

  6.   

    我用的是JDK1.4.2编译 javac -source 1.4 Test.java
    无错误
    运行 java Test
    finished我也认为选C,但是运行结果却是A./* 对了,小弟可用分为0了,只有在这里问一个问题了,嘿嘿.内部类 的修饰符 有那些???????????
    public static default 可以
    private protect 不行吧?
    final 行吗?
    类的修饰符是不是只能是 public 和 default ??英雄,指点我啊!!!!!
      

  7.   

    缺省状态下,断言是不会被执行的!
    你必须java -enableassertions Test才行!
      

  8.   

    assert默认不会执行的,要用java -ea
      

  9.   

    public class AssertTest {
      public static void main(String[] args) {
      int x = 0;
      assert x > 0: "wow, error";
     
      System.out.println("finished");
      }
     }
     
    E:\>javac -source 1.4 AssertTest.javaE:\>java -enableassertions AssertTest
    Exception in thread "main" java.lang.AssertionError: wow, error
            at AssertTest.main(AssertTest.java:5)
      

  10.   

    http://builder.com.com/5100-6370-5031704.html
      

  11.   

    内部类用private 和 protect 是可以的~,但没有意义,不能使用产生实例。