Article View: cn.bbs.comp.lang.java
Article #11837����JDK1.4���ӵ�assert���
From: JSP+ASP
Date: Fri, 27 Aug 2004 16:35
Date: Fri, 27 Aug 2004 16:35
71 lines
5107 bytes
5107 bytes
1. assert�����
JDK1.4������assert��䣬�������£�
assert assumption ����
assert assumption : error message or error code
assumption Ӧ����һ������ֵ�����������������ʽ���������յĽ��Ϊtrue��false
����
���assumptionΪtrue����ôһ���糣�����������û�г���һ�����ass
umptionΪfalse����ô�����ӳ�һ��java.lang.AssertionError ������ڴ��������
�˵ڶ��ִ�error message����error code��д���Ļ�����error message����error co
de������java.lang.AssertionErrorһ����ʾ������
2. ��assert���Ĵ���ı���
������ڴ�����ʹ����assert��䣬��ô��ʹ��javac����ʱӦ��������
javac �Csource 1.4 **.java
����Ļ���assert�ؼ��ֽ�������Ϊ�ؼ��֡���������Ϊassert����Ǵ�JDK1.4
���еġ���
��Ȼ�������ʹ��JDK1.4�����ϱ���ʱ������-source 1.4����Ļ������warning ��
3. ����ʱ����assert ��
ȱʡ�����assert�Dz������õġ�
����ʱӦ����������assert��
java �Cea:���� ����
����
java �Cea:���� ����
��Ӧ����-da�ر�assert ��
����ϸ���Բο�java����İ��飩��
4. assert�ĺô���ʹ�á�
����Ϊassert��Ҫ����debug ��ʹ�����ܺ�����λ�������⣬�ڴ�����ʵ��ط���
��assert��䣬�ܹ��ڴ�����ijЩֵ��ȡֵ��Χ����仯ʱѸ�ٵĶ�λ���������
�����bug ���뿴����������ӡ�
����i���ڵ�ȡֵ����0 �� 1 ��
��ô���ǿ�����ôд���룺
if (0 == i) {
��.
} else { //i == 1
��
}
��i��ֵ�ķ�Χ�����˱仯��������ȫ�п��ܵģ���Ϊ���i��ֵ����������ģ���ģ
�鴫�IJ�����������ͺ��п�����DZ�ڵ�bug���������bugδ�����������ֳ���
����ʹ���ֳ����ˣ�Ҫ��λ�������Ҳ�����ס���Ϊ��ܿ�����Ȼ����i��ֵ����0����
1��
����������ϴ����д������
if (0 == i) {
��.
} else { //i == 1
assert i==1:��The i value isn��t 0 or 1 .��
��.
}
��ôһ��i��ȡֵ��Χ������0,1 ����ô�������ӳ�һ�����д�����Ϣ��java.lang.Ass
ertionError ������Դ���Ķ�λ��һĿ��Ȼ�ˡ�
5. ���дһ�����е����ӣ�
public class TestAssert {
public static void main(String[] args) throws Exception {
int i=100;
String errorMsg = "This is a error";
int errorCode = 10000;
assert i>200:errorCode;
assert i>200:errorMsg;
}
}
Ȼ����룺
javac �Csource 1.4 TestAssert.java
Ȼ�����У�
java �Cea:TestAssert TestAssert
--
[32m90%������Ҫ��[5;31m�Լ�[0m[1;32m���������
[36m����������ˣ���ô���������Խ��[5;31m����[0m[1;31m���ˮƽԽ�ߣ���
[33m�����û����������ô���������Խ��[5;31m����[0m[1;33m��Խ��Խ�ӽ����
[34m��֪����˵�Ķ���[5;31m�ϻ�[0m[1;34m!!
[36m�����ش������������ű��˵�[5;31m����ʾ�[0m[1;36m����ɵ���ʧ��
[1;32m���˸�[5;31m����[0m[1;32m�κ�����.
[m[1;37m�� ��Դ:�����Ļ����� bbs.cqupt.edu.cn��[FROM: LoveLonely.com][m
Technical Details
Message-ID:
<4E0dKE$A0K@bbs.cqupt.edu.cn>Path:
arc1-ca.pugleaf.net!g2news1.google.com!news1.google.com!news.glorb.com!news3.optonline.net!news.bylinux.net!news2.happynet.org!news.uestc.edu.cn!CQUPTShow Full Headers
Complete Article Headers
X-Google-Thread: f6cb0,d026c656b1604f19,start X-Google-Attributes: gidf6cb0,public X-Google-Language: Chinese,GB Path: arc1-ca.pugleaf.net!g2news1.google.com!news1.google.com!news.glorb.com!news3.optonline.net!news.bylinux.net!news2.happynet.org!news.uestc.edu.cn!CQUPT From: jaket.bbs@bbs.cqupt.edu.cn (JSP+ASP) Newsgroups: cn.bbs.comp.lang.java Subject: ����JDK1.4���ӵ�assert��� Date: 27 Aug 2004 16:35:41 GMT Organization: ���Ļ����� Message-ID: <4E0dKE$A0K@bbs.cqupt.edu.cn> X-Filename: Java/M.1093624526.A Lines: 71