一些企业在招聘程序员的时候,总会特意提出一个要求,即“要求具有良好的编码规范”。确实现在程序开发人员已经不在是单枪匹马的单干,而是讲究团体作战。此时就要求团队内的乘员都可能够恪守代码的编写规范,这对于乘员之间共享代码、排错等作业都具有非常现实的意义。这在Java语言中当然也不例外。笔者借这次机会,就跟大家分享一下Java源代码的折行规则。虽然这基本不涉及到功能层面的内容,但是对于提高代码的阅读性却有不可替代的作用。

一、代码的最大长度。

虽然在Java的编译器中对于代码的最大长度没有硬性的规定。但是如果代码的长度太长,超过了编译器的最当行宽,显然阅读起来比较麻烦。为此根据笔者的经验,通常情况下Java源代码的行长度不应该大于80个字符。如果超过这个长度的话,在一些开发工具和编辑器上就无法很好的显示。如需要通过滚动条来显示后面部分的代码。当其他项目成员阅读这超长的代码时,就会看得眼花缭乱。当人的温饱问题解决了之后,就需要开始注意美观方面的问题。所以程序开发人员在开发应用程序的时候,要尽量避免书写长的代码。如果代码的每行长度确实需要超过80个字符的话(最好将每行代码的长度控制在70个字符左右),那么就需要对代码进行分行。

二、在恰当的地方对代码进行分行。

笔者建议将Java源代码每行的长度控制在70个字符、最大不超过80个字符。当超过这个字符长度的时候,开发人员就需要考虑在恰当的地方对他们进行分行处理。不过这个分行也不是说开发人员想在哪里进行分行就在哪里进行分行。这个分行是有一定技巧的。虽然这些技巧大部分并不是强制性的规定,但是都是一些专家们的经验总结,可以提高代码的阅读性。为此笔者希望各位程序开发能够严格的遵守。

技巧一:高层折行优于低层折行。

这个技巧是说,在考虑对代码进行折行处理的时候,需要注意代码的层次性。如某段代码涉及到混合四则运算,而四则运算又有明显的运算顺序,此时对代码进行折行时就最好能够在四则运算的关键顺序上进行折行处理。如现在有如下的一段代码:

Mynum=mynum1*(mynum1+mynue2+mynum3-mynum4)+8*mynum5

如果要对这段代码进行折行的话,该在哪个地方加入一个折行符号呢?如果是笔者处理的话,笔者会按如下的格式对代码进行折行处理。

Mynum=mynum1*(mynum1+mynue2+mynum3-mynum4)

+8*mynum5

这主要是根据四则运算的运算层次来进行折行的。显然,*符号的优先级要比+符号要高。所以在+号前面对其进行折行处理,那么就可以一目了然的反应出代码的运算层次。可以大幅度的提高代码的阅读性。所以代码折行的第一个技巧就是高层折行优于低层折行。如此的话,可以使得应用程序的结构代码更加的清晰,更容易被团队成员所理解。

java折行_Java源代码的折行规则相关推荐

  1. java word表格_Java 添加Word表格行或列

    import com.spire.doc.*; import com.spire.doc.documents.BorderStyle; import java.awt.*; public class ...

  2. java执行数据库命令行_java程序执行命令行,解锁数据库表

    有些表锁的时间长或其他原因,在plsql中不能解锁,只能用命令行解锁. 有些功能跨平台系统的交互偶尔会锁表,就需要自动解锁. 下面是解锁的代码: package com.lg.BreakOracleU ...

  3. java去掉的行_Java实现去掉每行的行号

    /** * 将每行的行号去掉, 只限于每行前面都有行号的, 并且是以"."为分割的, * 还有其他各种可能, 有待完善 */ public static void removeLi ...

  4. java 覆盖文件_java 如何使用命令行移动并覆盖文件

    我想写一个移动并覆盖文件的CMD运行的java小程序,但是学的关于IO的忘记了很多,估计很多地方写错了,求高人帮忙补全一下,并且解释一下大致的流程importjava.util.*;importjav ...

  5. java加按钮_Java实战:50行代码实现QQ登录和微博登录

    作者丨我是小茗同学 整理丨Java团长 https://www.cnblogs.com/liuxianan 1. 前言 个人网站最近增加了评论功能,为了方便用户不用注册就可以评论,对接了 QQ 和微博 ...

  6. java计算器注释_java计算器实现,百行代码,清晰注释

    写安卓写了三年有余了吧!今天无聊,在网上看看安卓的计算器居然没有一个实现的好的,真实让人心寒啊! 闲着无聊,我也写了一个java实现计算器,代码简单易懂,稍微有那么点不好懂的我都写了详细的注释的! 那 ...

  7. java excel插入列_Java 插入、隐藏/显示、删除Excel行或列

    概述 操作Excel工作表时,对表格中的行或列数据可执行,包括插入.隐藏.显示.删除等在内的多种操作需求,本文将通过Java代码示例演示每种操作的具体实现方法.文中方法使用了Java Excel类库( ...

  8. Java读取UTF-8格式txt文件第一行出现乱码及解决;Java读带有BOM的UTF-8文件乱码原因及解决方法(转载)...

    原文地址:http://blog.csdn.net/jackpk/article/details/5702964/ Java读取UTF-8的txt文件第一行出现乱码"?"及解决 t ...

  9. C# 里怎样得到当前执行的函数名,当前代码行,源代码文件名。

    得到函数名: System.Diagnostics.StackTrace   st   =   new   System.Diagnostics.StackTrace();     this.Text ...

最新文章

  1. 笔记 | PyTorch张量Tensor的一些必备操作
  2. C/C++ 时间相关用法
  3. vb.net 设置打印纸张与页边距_装订文档时不想让文字被挡住?在Excel中你可以这样设置打印!...
  4. ehcache 程序_将Ehcache添加到Openxava应用程序
  5. CentOS 7 yum 安装php5.6
  6. python面向过程是基于面向对象的_Python5.1-面向对象与面向过程
  7. MySQL的使用笔记
  8. io.jsonwebtoken.SignatureException: JWT signature does not match locally computed signature.
  9. asp 检查黑名单_黑名单验证的突破
  10. Bailian2720 大象喝水【模拟】
  11. 最流行的 6 款 Python 解释器
  12. 91 全能地图下载器和 bigemap地图下载器哪个好用?
  13. android游戏手柄开发,android游戏手柄开发测试代码
  14. python矩阵连乘_python动态演示动态规划解决矩阵连乘
  15. cad vba 打开文件对话框_基于VBA的AutoCAD二次开发之批量替换DWG文件的指定范围(上)...
  16. 从历史故事看企业用人-之二--三国之东吴
  17. js 秒转换成时分秒
  18. 电商网站的商品详情页系统架构
  19. ios android 占有率,Android全球占有率28.4% 超iOS一倍
  20. html压缩包用什么软件打开方式,分享一招超简单打开zip文件的方法

热门文章

  1. IT行业最重要的四件宝--我的实习体会
  2. PJ可能会用到的动态规划选讲-学习笔记
  3. Oracle统计某一年中的1-12个月的数据总和
  4. 微信支付,判断是否安装了微信
  5. 从C#中通过Windows窗体添加信息到数据库 (添加学生信息)
  6. Sparrow - Distributed, Low Latency Scheduling
  7. openerp 常见问题 OpenERP在哪储存附件?(转载)
  8. 12306订票助手秘笈:2013春节我要回家
  9. linux下查看CPU、内存、磁盘信息
  10. ffmpeg编译的静态链接库问题