`
javawebsoa
  • 浏览: 425518 次
社区版块
存档分类
最新评论

Java学习笔记:(33)检查参数的有效性

 
阅读更多
绝大多数方法和构造函数都对传入的参数有某些限制,如索引必须是非负数,对象引用不能是null,等等。如果一个无效的参数传入,应该首先对参数进行检查,如果有问题方法应很快失败,并清楚地抛出一个适当的异常(exception)指明错误的原因。同时应该使用Javadoc的@throws标签来说明。

检查参数有效性的方法和形式可能因具体情况而异。这里要介绍一个“新”手段——assert(断言)。assert是Java1.4之后引入的为人热切期盼的一项新功能。您可以将该功能看作是异常处理的一种高级形式。断言表示为一些布尔表达式,程序员相信在程序中的某个特定点该表达式的值为真。例如,程序员可能会在程序中使用断言,使您永远也不会到达 switch 语句中的 default 条件。更多关于断言的介绍请见 http://publish.it168.com/2006/0317/20060317029801.shtml或搜索网络。

总之,当你编写一个方法或构造函数时,应该考虑对于它的参数都有哪些限制。你应当写到文档中,并在方法的开头进行检查。养成这样的习惯是非常重要的,这会使错误尽早地、准确地暴露出来。


分享到:
评论

相关推荐

    良葛格Java学习笔记

    【良葛格Java学习笔记】 本笔记主要涵盖了Java编程语言的核心概念和技术,旨在帮助初学者以及有一定基础的开发者深入理解并掌握Java。Java作为一种广泛应用于企业级应用开发、移动开发(尤其是Android)以及大数据...

    CoreJava学习笔记

    ### CoreJava学习笔记 #### 一、JAVA特点与运行原理 **JAVA特点:** 1. **简单性**:Java的设计者们将C++语言中许多不易理解和容易混淆的部分去除,使得Java更容易理解与掌握。 2. **面向对象**:Java几乎一切都...

    java学习笔记.doc

    Java通常不检查内存分配是否成功,而C++需要检查并处理可能出现的异常。 3. 成员变量初始化:Java允许在类定义中直接初始化常量(const)和静态成员变量,而C++仅限于const static成员。其他成员变量和静态成员变量...

    java笔记 java笔记

    - **简单性**:Java语言设计简洁明了,易于学习和使用。 - **健壮性**:Java拥有严格的错误检测机制,有助于开发健壮的应用程序。 #### 1.2 运行原理 Java程序的运行分为几个阶段: 1. **编写**:使用文本编辑器...

    适应java零基础与初学者的java学习笔记,总结了javaSE的知识点

    ### 适应java零基础与初学者的java学习笔记 #### Java基本语法 Java的基本语法是初学者接触Java语言的第一步,主要包括以下几个方面: 1. **关键字**:Java中有一些具有特殊含义的单词被称为关键字,例如`public`...

    良葛格java5.0的学习笔记

    良葛格的Java 5.0学习笔记,作为一位学习者的经验总结,对于初学者来说无疑是一份宝贵的资源。以下是对这些笔记中可能涵盖的知识点的详细解释: 1. **Generics(泛型)**:Java 5.0最大的变化之一就是引入了泛型,...

    JAVA学习笔记,包括实例

    这份"JAVA学习笔记"是专为初学者设计的,旨在帮助他们快速掌握Java编程的基础知识和实践技能。 首先,Java的核心概念包括类、对象、封装、继承和多态。类是对象的模板,它定义了对象的属性和行为;对象则是类的实例...

    java学习笔记-----给java初学者

    Java学习笔记是专门为Java初学者设计的一套详尽的学习资源,旨在帮助新手快速掌握这门广泛使用的编程语言。这份笔记涵盖了从基础概念到高级特性的全面内容,是学习和复习Java知识的理想工具。 1. **Java简介** ...

    java基础18天Typora笔记

    通过这份笔记,学习者将逐步了解并掌握Java语言的核心概念和基本语法,为后续的深入学习和实践打下坚实的基础。 1. **Java简介** Java是一种广泛使用的面向对象的编程语言,由Sun Microsystems(现为Oracle公司)...

    java笔记,上课笔记

    Java是一种广泛使用的面向对象的编程语言,其设计目标是具有良好的可移植性、高效性和安全性。以下是对标题和描述中提到的Java知识点的详细说明: 1. **继承、封装、多态**: - 继承是面向对象编程的基础特性,...

    java经验 学习笔记

    在Java编程语言中,理解和掌握方法、参数以及变量的生命周期对于编写高效、可靠的代码至关重要。以下是对这些知识点的详细解析: ### 2.1 方法和参数 #### 引用类型和基本类型的比较 引用类型(如对象)和基本...

    java 学习笔记

    Java学习笔记是一个专门为初学者设计的资源集合,涵盖了J2SE(Java 2 Standard Edition)的所有核心知识点。J2SE是Java平台的基础,主要用于桌面应用和服务器端开发,提供了丰富的API和工具,使得开发者能够创建功能...

    良葛格Java JDK 5.0学习笔记

    《良葛格Java JDK 5.0学习笔记》是一份详尽记录了Java开发环境JDK 5.0核心特性和重要变化的学习资料。这份笔记深入浅出地讲解了Java编程语言在JDK 5.0版本中的诸多新特性,为初学者和有经验的开发者提供了宝贵的参考...

    Java很好的学习笔记集合Map,学习代码

    总结,本篇Java学习笔记主要围绕Map接口展开,深入讲解了Map的基本概念、方法、实现类以及遍历方式。同时,也提到了Java Web开发中的相关知识,如Cookie、Session、localStorage和sessionStorage的使用,以及Java 8...

    Java学习笔记

    ### Java学习笔记知识点详解 #### 1. 连接数据库步骤 连接数据库是任何应用程序的基础之一,特别是对于那些需要与数据库交互的应用来说更是如此。在Java中,连接数据库的步骤通常包括以下几步: 1. **加载数据库...

    javaSE的学习笔记

    - **强类型语言**:Java 语言具有严格的类型检查机制,能够有效减少运行时错误。 - **开源项目**:Java 社区庞大,拥有大量的开源项目和库,便于开发者找到解决方案。 ##### 2. JDK 和 JRE - **JDK (Java ...

    java之jvm学习笔记八(实践对jar包的代码签名)

    在JVM中,当加载签名过的JAR时,它会检查签名的完整性和有效性,如果签名失败,JVM将拒绝加载该JAR,从而保护系统免受潜在的恶意攻击。同时,代码签名还支持证书链,允许用户验证签名者的身份,确保代码来自可信的...

    JUC学习笔记(Java多线程)

    总的来说,JUC学习笔记涵盖了Java多线程编程的主要方面,包括线程的创建与管理、同步机制、并发容器以及协调工具的使用,这些都是提升Java并发编程能力的关键知识点。通过深入理解和熟练应用这些工具,开发者可以更...

    23种设计模式学习笔记及源码

    这个压缩包文件包含了23种设计模式的学习笔记和源码,旨在帮助开发者深入理解并熟练运用这些模式。以下是对每种设计模式的详细解释,以及它们在Java编程中的应用。 1. **单例模式**:确保一个类只有一个实例,并...

Global site tag (gtag.js) - Google Analytics