- 浏览: 1012129 次
- 性别:
- 来自: 杭州
文章分类
- 全部博客 (826)
- 硬件 (8)
- 软件 (24)
- 软件工程 (34)
- JAVA (229)
- C/C++/C# (77)
- JavaScript (8)
- PHP (1)
- Ruby (3)
- MySQL (14)
- 数据库 (19)
- 心情记事 (12)
- 团队管理 (19)
- Hadoop (1)
- spring (22)
- mybatis(ibatis) (7)
- tomcat (16)
- velocity (0)
- 系统架构 (6)
- JMX (8)
- proxool (1)
- 开发工具 (16)
- python (10)
- JVM (27)
- servlet (5)
- JMS (26)
- ant (2)
- 设计模式 (5)
- 智力题 (2)
- 面试题收集 (1)
- 孙子兵法 (16)
- 测试 (1)
- 数据结构 (7)
- 算法 (22)
- Android (11)
- 汽车驾驶 (1)
- lucene (1)
- memcache (12)
- 技术架构 (7)
- OTP-Erlang (7)
- memcached (17)
- redis (20)
- 浏览器插件 (3)
- sqlite (3)
- Heritrix (9)
- Java线程 (1)
- scala (0)
- Mina (6)
- 汇编 (2)
- Netty (15)
- libevent (0)
- CentOS (12)
- mongod (5)
- mac os (0)
最新评论
-
kingasdfg:
你这里面存在一个错误添加多个任务 应该是这样的 /** * ...
Quartz的任务的临时启动和暂停和恢复【转】 -
kyzeng:
纠正一个错误,long型对应的符号是J,不是L。
Jni中C++和Java的参数传递 -
zhaohaolin:
抱歉,兄弟,只是留下作记录,方便学习,如果觉得资料不好,可以到 ...
netty的个人使用心得【转】 -
cccoooccooco:
谢谢!自己一直以为虚机得使用网线才可以与主机连接呢。。
主机网卡无网线连接与虚拟机通信 -
yuqilin001:
要转别人的东西,请转清楚点嘛,少了这么多类,误人子弟
netty的个人使用心得【转】
J2SE 1.4在语言上提供了一个新特性,就是assertion(断言)功能,它是该版本在Java语言方面最大的革新。在软件开发中,assertion是一种经典的调试、测试方式。 assertion(断言)在软件开发中是一种常用的调试方式,很多开发语言中都支持这种机
制,如C,C++和Eiffel等,但是支持的形式不尽相同,有的是通过语言本身、有的是通过库函数等。另外,从理论上来说,通过assertion方式
可以证明程序的正确性,但是这是一项相当复杂的工作,目前还没有太多的实践意义。 在实现中,assertion就是在程序中的一条语句,它对一个boolean表达式进行检
查,一个正确程序必须保证这个boolean表达式的值为true;如果该值为false,说明程序已经处于不正确的状态下,系统将给出警告或退出。一般
来说,assertion用于保证程序最基本、关键的正确性。assertion检查通常在开发和测试时开启。为了提高性能,在软件发布
后,assertion检查通常是关闭的。下面简单介绍一下Java中assertion的实现。 1.1) 语法表示 在语法上,为了支持assertion,Java增加了一个关键字assert。它包括两种表达式,分别如下: assert expression1; assert expression1: expression2; 在两种表达式中,expression1表示一个boolean表达
式,expression2表示一个基本类型或者是一个对象(Object)
,基本类型包括boolean,char,double,float,int和long。由于所有类都为Object的子类,因此这个参数可以用于所有对
象。 1、assert
如果
为true,则程序继续执行。 如果为false,则程序抛出AssertionError,并终止执行。 2、assert
: <错误信息表达式> 如果
为true,则程序继续执行。 如果为false,则程序抛出java.lang.AssertionError,并输出<错误信息表达式>。 1.2) 语义含义 在运行时,如果关闭了assertion功能,这些语句将不起任何作用。如果打开了
assertion功能,那么expression1的值将被计算,如果它的值为false,该语句强抛出一个AssertionError对象。如果
assertion语句包括expression2参数,程序将计算出expression2的结果,然后将这个结果作为AssertionError的
构造函数的参数,来创建AssertionError对象,并抛出该对象;如果expression1值为true,expression2将不被计算。
一种特殊情况是,如果在计算表达式时,表达式本身抛出Exception,那么assert将停止运行,而抛出这个Exception。 1.3) 一些assertion例子 下面是一些Assert的例子。 assert 0 < value; assert 0 < value:"value="+value; assert ref != null:"ref doesn''t equal null"; assert isBalanced(); 1.4) 编译 由于assert是一个新关键字,使用老版本的JDK是无法编译带有assert的源程序。因
此,我们必须使用JDK1.4(或者更新)的Java编译器,在使用Javac命令时,我们必须加上-source 1.4作为参数。-source
1.4表示使用JDK 1.4版本的方式来编译源代码,否则编译就不能通过,因为缺省的Javac编译器使用JDK1.3的语法规则。 一个简单的例子如下: javac -source 1.4 test.java 1.5) 运行 由于带有assert语句的程序运行时,使用了新的ClassLoader和Class类,因此,这种程序必须在JDK1.4(或者更高版本)的JRE下运行,而不能在老版本的JRE下运行。 由于我们可以选择开启assertion功能,或者不开启,另外我们还可以开启一部分类或包的assertion功能,所以运行选项变得有些复杂。通过这些选项,我们可以过滤所有我们不关心的类,只选择我们关心的类或包来观察。下面介绍两类参数: 参数 -esa和 -dsa: 它们含义为开启(关闭)系统类的assertion功能。由于新版本的Java的系统类中,也
使了assertion语句,因此如果用户需要观察它们的运行情况,就需要打开系统类的assertion功能 ,我们可使用-esa参数打开,使用
-dsa参数关闭。
-esa和-dsa的全名为-enablesystemassertions和-disenablesystemassertions,全名和缩写名有同
样的功能。 参数 -ea和 -ea: 它们含义为开启(关闭)用户类的assertion功能:通过这个参数,用户可以打开某些类或
包的assertion功能,同样用户也可以关闭某些类和包的assertion功能。打开assertion功能参数为-ea;如果不带任何参数,表示
打开所有用户类;如果带有包名称或者类名称,表示打开这些类或包;如果包名称后面跟有三个点,代表这个包及其子包;如果只有三个点,代表无名包。关闭
assertion功能参数为-da,使用方法与-ea类似。 -ea和-da的全名为-enableassertions和-disenableassertions,全名和缩写名有同样的功能。 下面表格表示了参数及其含义,并有例子说明如何使用。 参数 例子 说明 -ea java -ea 打开所有用户类的assertion -da java -da 关闭所有用户类的assertion -ea:
java -ea:MyClass1 打开MyClass1的assertion -da:
java -da: MyClass1 关闭MyClass1的assertion -ea:
java -ea:pkg1 打开pkg1包的assertion -da:
java -da:pkg1 关闭pkg1包的assertion -ea:... java -ea:... 打开缺省包(无名包)的assertion -da:... java -da:... 关闭缺省包(无名包)的assertion -ea:
... java -ea:pkg1... 打开pkg1包和其子包的assertion -da:
... java -da:pkg1... 关闭pkg1包和其子包的assertion -esa java -esa 打开系统类的assertion -dsa java -dsa 关闭系统类的assertion
发表评论
-
调试jdk中的源码,查看jdk局部变量
2013-06-15 23:30 1050调试jdk中的源码,查看jdk局部变量 2012-04 ... -
Eclipse快捷键 10个最有用的快捷键<转>
2013-04-11 23:28 1072Eclipse中10个最有用的快捷键组合 一个Eclip ... -
Lucene 3.6 中文分词、分页查询、高亮显示等
2012-12-09 23:35 18141、准备工作 下载lucene 3.6.1 : htt ... -
Maven实战(九)——打包的技巧(转)
2012-10-12 00:41 933“打包“这个词听起 ... -
基于Maven的web工程如何配置嵌入式Jetty Server开发调试环境(转)
2012-10-12 00:28 9231、首先在web工程的POM文件里添加依赖jar包如下: ... -
轻轻松松学Solr(1)--概述及安装[转]
2012-09-18 14:59 993概述 这段时间对企 ... -
分析Netty工作流程[转]
2012-09-04 19:02 886下面以Netty中Echo的例 ... -
让eclipse在ubuntu下面好看一点
2012-03-27 10:17 915<p> </p> <h1 cla ... -
zookeeper安装和应用场合(名字,配置,锁,队列,集群管理)[转]
2012-01-12 17:59 1647安装和配置详解 本文 ... -
Jakarta-Common-BeanUtils使用笔记[转]
2012-01-10 14:13 1153Jakarta-Common-BeanUtils ... -
一个关于Java Thread wait(),notify()的实用例【转】
2012-01-07 16:05 1019///// // ProducerConsume ... -
一篇不错的讲解Java异常的文章(转载)----感觉很不错,读了以后很有启发[转]
2012-01-06 15:02 1263六种异常处理的陋习 ... -
如何解决HP QC(Quality Center)在Windows 7下不能工作的问题
2011-12-26 10:48 1577HP QC(Quantity Center) 是一款不错的测 ... -
JAVA读写文件,中文乱码 【转】
2011-12-19 23:43 2117最近在做HTML静态生成,需要从硬盘上把模版文件的内容读出来。 ... -
Java 6 JVM参数选项大全(中文版)【转】
2011-12-19 19:51 969Java 6 JVM参数选项大全(中文版) 作者 ... -
使用assembly plugin实现自定义打包【转】
2011-12-13 01:58 968在上一篇文章中,讨论到在对maven的机制不熟悉的情况下,为了 ... -
使用maven ant task实现非标准打包[转]
2011-12-13 01:56 1045maven很强大,但是总有些事情干起来不是得心应手,没有使用a ... -
Java日期转换SimpleDateFormat格式大全【转】
2011-12-08 20:22 130924小时制时间 显示: public clas ... -
使用Spring的表单标签库
2011-11-22 20:08 106913.9. 使用Spring的 ... -
WEB界面开发规范(转)
2011-11-02 20:06 939页面设计规则 页面命名规则 1、每个功能 ...
相关推荐
在编程语言中,关键字是预定义的具有特殊含义的标识符,它们在编译时被解析器识别并执行特定的功能;而保留字则是语言设计者为未来版本预留的标识符,尽管当前版本未使用,但为了兼容性和一致性,程序员应避免将其...
在Java编程语言中,关键字是具有特殊含义的预定义标识符,它们被Java解析器用来识别语法结构。这些关键字不能用作变量名、类名或方法名。在Java中,一共有53个关键字,包括两个保留字。下面将详细阐述这些关键字的...
总结来说,Java基础笔试题涵盖了从基本语法到高级特性的广泛内容,包括类和对象、多线程、Web开发、数据库操作、XML解析、企业级开发、设计模式以及系统层面的知识。理解并熟练掌握这些知识点对于Java程序员来说至关...
以下是对这些知识点的详细解析: ### 1. Java 的跨平台特性 Java 最为人所熟知的特点之一就是它的跨平台能力,即“一次编写,到处运行”(Write Once, Run Anywhere, WORA)。Java 的这一特性主要得益于 Java ...
本篇文章将深入解析 Java 中的一些关键关键字,并提供相关的编程示例。 1. `abstract` 关键字: `abstract` 可以用于修饰类和方法。抽象类(abstract class)无法直接创建实例,但可以作为其他类的基类,提供继承...
### JAVA基础知识问答详解 ...以上是对给定文件中提到的Java基础知识问答的详细解析,涵盖了从关键字的使用、集合类的差异到垃圾收集机制的各个方面,旨在帮助初学者深入理解Java的核心概念和技术细节。
### JAVA面试基础题知识点解析 #### 一、final, finally, finalize - **final**:在Java中,关键字`final`可以用来修饰类、方法和变量。当一个类被声明为`final`时,它不能被继承;如果一个方法被声明为`final`,...
- **6.3.1 使用断言**:介绍assert关键字的应用。 - **6.4 本章小结**:回顾本章学习内容。 ##### 第7章 深入理解面向对象的精髓 - **7.1 理解面向对象设计思想** - **7.1.1 面向对象的特征**:总结面向对象的...
### Java基础知识练习题详解 #### 1. 无法读取xxx.java 文件 - **问题解析**:如果遇到“无法读取 xxx.java”这样的错误提示,通常意味着文件路径不正确、文件不存在或者没有权限访问该文件。 - **解决方法**: - ...
Java 中的关键字包括 abstract、assert、boolean、break、byte、case、catch、char、class、const、continue、default、do、double、else、enum、extends、final、finally、float、for、goto、if、implements、...
- **关键字和标识符**:Java中有一些预定义的关键字,如`abstract`、`final`、`new`等,它们具有特殊的含义,并且不能用作标识符(例如变量名或类名)。标识符是用于标识类、变量、方法等的名字,遵循一定的命名规则...
本文将深入解析《java笔试中的基础知识》所提及的关键知识点,旨在为准备参加Java相关技术评估的读者提供全面而深入的理解。 ### 1. Final关键字 `final`关键字是Java中的一个重要特性,它具有多重含义。当修饰类...
assert关键字则为单元测试提供了便利,帮助开发者确保代码的正确性。 下载《Java 2 教程(第五版)(PDG)》的源代码和源码资料,可以帮助读者更直观地学习和实践这些概念。通过阅读源码,你可以深入了解各种Java技术的...
关键字是指在Java语言中具有特殊含义的单词,它们在Java编程中扮演着至关重要的角色。关键字通常用来定义数据类型、流程控制、访问权限等。 - **数据类型关键字**: - `class`:用于定义类。 - `interface`:用于...
以下是一些常见的Java基础知识面试题及其解析: 1. **作用域的区别** - `public`:任何地方都能访问。 - `private`:只能在本类中访问。 - `protected`:在本类、同一包和子类中可访问。 - 无修饰符(friendly...
8. assert关键字:在JDK1.4后引入,用于断言某个条件在程序执行到该点时始终为真。默认情况下,断言是关闭的,需要启动参数-ea启用。 9. GC(Garbage Collection):垃圾收集器负责回收不再使用的对象,释放内存。...