`
elite20130514
  • 浏览: 47823 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

读编写高质量代码整理(一)

阅读更多

在毕业工作的这两个月里,项目开发过程中总有些代码自己感觉写的不漂亮,总感觉会有更好的方式,然而时间又有限,所以在不影响程序运行的情况下就搁在一边了,然而有这样的疙瘩在心里总感觉不爽。所以工作之余,拜读改善java程序的151个建议这本书,并根据自己实际情况,做出整理。下面的都以建议的形式给出,代码千变万化,这里介绍的是比较高质量的建议写法。
下边是昨天看的一些知识整理:避免带有变长参数的方法重载

在项目的开发中,我们有需要把不确定数量的参数传递到方法,java5直接都是把形参定义成Collection接口或其子类类型,亦或是数组,这种方法的缺点是需要对实参进行判断和筛选,比如实参为null或者长度为0的Collection或数组,这是书上的原话,其实在实际项目中都要进行判null操作,比如

public void fun2(Collection<Integer> c) {
		if(c != null)
		for(int tmp :c) {
			System.out.println(tmp);
		}
	}
	public void fun(int... var) {
		if(var != null)
		for(int tmp :var) {
			System.out.println(tmp);
		}
	}

 

 如果不判null,就有可以抛NullPointerException

 

public class demo4 {
	public void foo(int a,int b) {
		System.out.println("this is fixed args method");
	}
	public void foo(int a,int... b) {
		System.out.println("this is variable args method...");
	}
	public static void main(String[] args) {
		demo4 d = new demo4();
		d.foo(1, 2);
		d.foo(1, 2,3);
	}
}
/**
 * 	d.foo(1,2)为什么会调用第一个foo方法?编译器是如何实现的?
 * 	因为int是一个原生数据类型,而数组本身是一个对象,编译器"偷懒",于是从最简单的开始"猜想"
 * 	只要符合编译通过,则最先调用
 * 为了让使代码更具可读性,建议考虑不用变长参数的方法重载
 */

 

this is fixed args method
this is variable args method...

 

分享到:
评论

相关推荐

    编写高质量C语言代码

    ### 编写高质量C语言...通过对本书的学习,读者不仅能掌握编写高质量代码的具体方法,还能深刻理解代码质量对于软件开发的重要性。无论是对于新手程序员还是有一定经验的开发者来说,这本书都是一本不可多得的好书。

    如何编写高质量JS代码(续)

    继续上一篇文章《如何编写高质量JS代码》今次整理一下javascript函数知识点。 2.使用函数 函数给程序员提供了主要的抽象功能,又提供实现机制。函数可以独立实现其他语言中的多个不同的特性,例如,过程、方法、构造...

    Verilog代码编写规范

    ### Verilog代码编写规范详解 #### 一、代码编写风格的重要性 在FPGA设计领域,Verilog作为一种重要的硬件描述语言,其代码的质量直接影响到项目的...Verilog代码编写规范的制定与遵循,是实现高质量FPGA设计的基础。

    C语言代码自动整理工具

    3. **代码重构**:高级的C语言代码整理工具可能包含代码重构功能,比如提取函数、重命名变量、消除重复代码等,这些操作在大型项目中尤其重要,能够帮助改善代码结构,提高代码质量。 4. **代码检查**:部分工具还...

    delphi代码整理工具

    标题中的"Delphi代码整理工具"指的是专门针对使用Delphi编程语言编写的代码进行优化、格式化和整理的软件工具。Delphi是一种基于Object Pascal语言的集成开发环境,广泛用于创建Windows桌面应用程序。代码整理工具在...

    C自动整理代码风格工具

    为了统一代码风格,提高代码质量,我们可以使用自动代码整理工具。这些工具能够按照特定的编码规范,如K&R、LLVM或GNU等,对C代码进行格式化,使得代码更加整洁,便于阅读和维护。 本文将深入探讨C语言的自动代码...

    sonarqube代码规范整理_jchaoy

    SonarQube 是一个静态代码分析工具,旨在帮助开发者编写高质量、安全的代码。通过对代码进行分析,SonarQube 可以检测出潜在的 bug、漏洞和异味,从而帮助开发者提高代码质量和安全性。本文档旨在整理 SonarQube ...

    代码规范整理

    这份代码规范整理不仅包含了许多针对PHP开发的细节规范,还指出了编写高质量、易于协作的代码需要注意的方方面面。遵循这些规范,开发者能够编写出更加清晰、一致的代码,从而提高开发效率和项目质量。对于想要快速...

    java代码整理

    "java代码整理"可能指的是对已经编写完成的Java程序进行优化、重构或分类管理的过程。这个过程对于保持代码的整洁性、提高代码可读性和维护性至关重要。下面,我们将深入探讨Java编程的一些关键知识点: 1. **基础...

    代码整理1111.rar

    "代码整理1111.rar"这个压缩包文件很可能包含了某位开发者或团队整理的一系列关于代码规范的资源,可能是示例代码、文档或者教程。尽管我们无法看到具体的文件内容,但我们可以基于这个主题,详细阐述代码规范的重要...

    代码阅读整理5

    "代码阅读整理5"可能是某个系列教程或笔记的一部分,旨在帮助开发者提升代码理解能力,提高编程效率,并且更好地理解和维护现有的代码库。 1. **代码审查**:代码阅读不仅是个人学习的过程,也是团队协作中的关键...

    免费的VB6代码格式整理工具

    总之,IndenterVB6作为一款免费的VB6代码格式整理工具,是提升VB6编程效率和代码质量的好帮手。通过自动化整理代码,开发者可以更专注于逻辑实现,而非琐碎的格式调整工作,从而提高生产力,为软件开发带来显著的...

    delforex2.4.2一个整理Delphi代码的工具,带source

    总的来说,Delforex2.4.2是一款实用且功能强大的Delphi代码整理工具,它的存在极大地提升了开发效率,改善了代码质量。对于初学者而言,它是一个良好的学习帮手,可以培养良好的编码习惯;对于经验丰富的开发者,它...

    文件整理基础部分C#代码

    6. **单元测试**:通过编写测试代码来验证功能模块的正确性,确保软件质量。在C#中,常用的单元测试框架有NUnit、xUnit等。 以上就是基于标题和描述所推测的C#基础编程知识要点,以及可能在压缩包中涉及的高级主题...

    CSP一二题代码整理(2018年-2022年)

    这个压缩包文件“CSP一二题代码整理(2018年-2022年)”显然是一个集合,包含了2018年至2022年间CSP比赛一、二类问题的解题代码。通过这些代码,我们可以深入学习CSP考试中常见问题的解决策略和编程技巧。 首先,...

    高质量C/C++编程指南

    《高质量C/C++编程指南》是一本以作者林锐博士的未出版手稿为基础,整理成的规范化文件,主要用于上海贝尔网络应用事业部的内部培训和规范制定。这本书旨在分享C++/C编程的良好实践,鼓励知识共享,但同时也对版权和...

    学习整理C++高质量编程简介

    ### C++高质量编程知识点概述 #### 一、文件结构与头文件管理 ...以上内容是根据《学习整理C++高质量编程简介》中的部分内容总结的关键知识点。遵循这些准则和最佳实践有助于编写出高效、可维护且易于理解的C++代码。

    代码整理工具astyle(Windows新版本)

    AStyle(Artistic Style)是一款优秀的开源代码整理工具,主要用于自动格式化C、C++、C++/CLI、Objective-C、C#和Java等编程语言的源代码,使其遵循特定的编码风格。这款工具在编程社区中广受欢迎,因为它可以帮助...

Global site tag (gtag.js) - Google Analytics