关于中文写类名及方法名的疑问?-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

关于中文写类名及方法名的疑问?

2016-03-09 18:53:20 2085 2

众所周知,java是支持中文的方法名和类名的,如下面代码

public class 谁的年龄大{
    //------------这就叫代码的可读性---------
    public static void main(String[] args) {
        int 张三的年龄 = 20;
        int 李四的年龄 = 21;
        boolean 张三的年龄是不是比李四的年龄要大 = 判断甲的年龄大还是乙大(张三的年龄, 李四的年龄);
        if (张三的年龄是不是比李四的年龄要大 == 对) {
            在控制台输出这么一句话并换行("张三的年龄大");
        } else if (张三的年龄是不是比李四的年龄要大 == 大错特错) {
            在控制台输出这么一句话并换行("李四的年龄大");
        }
    }
    //--------------定义自然语言(把你的注释删掉,改成方法名)--------------
    static boolean 对 = true;
    static boolean 大错特错 = false
    /**
     * 你确定我应该写注释?
     */
    public static boolean 判断甲的年龄大还是乙大(int 甲的年龄,int 乙的年龄){
        return 甲的年龄 > 乙的年龄;
    }
    public static void 在控制台输出这么一句话并换行(String 要在控制台输出的话){
        System.out.println(要在控制台输出的话);
    }
}

输出 -> 李四的年龄大

中文化的好处在于,代码的可读性非常之强
上面这段代码,我拿给一个不懂编程的高中生看,也能非常清晰的看懂代码及里面的逻辑
而在团队开发中,成员素质良莠不齐,我个人觉得如果统一使用这一的命名规范的话,开发效率至少能提升50%以上!
中文化的缺点
不够国际化
在某些系统中,会出现乱码情况
能否用中英文混杂命名的方式起方法名
所以我最后的思考是,能否用中英文混杂的命名方法命名和编写查看代码,在编译运行的时候,统一自动把方法名类名中的中文去掉只留下英文,这样的方式是否可行呢?

取消 提交回答
全部回答(2)
  • 中文编程
    2019-07-17 18:56:37

    商用项目早在2009年起(实际肯定更早)就一直有用中文命名的, 详见你们在怎样的项目中使用过中文命名?

    中文编程GitHub组多数实用/演示项目都用了中文命名标识符, 使用语言包括Java, JS/TS, Python, MySQL等等.

    如果在编译运行时发现中文命名导致的问题, 欢迎到github组提issue, 大家一同研究一下.

    0 0
  • 蛮大人123
    2019-07-17 18:56:37
     * Prints a string followed by a newline. The string is converted to an array of bytes using
         * the encoding chosen during the construction of this stream. The bytes are
         * then written to the target stream with {@code write(int)}.
         *
         * <p>If an I/O error occurs, this stream's error state is set to {@code true}.
         *
         * @param str
         *            the string to print to the target stream.
         * @see #write(int)
         */
        public synchronized void println(String str) {
            print(str);
            newline();
        }

    注释的重点在于把你代码段的内容,进出口表述详尽,清晰即可。
    至于用何种语言来实现,这不是重点。

    0 0
添加回答
相关问答

40

回答

[@徐雷frank][¥20]什么是JAVA的平台无关性

大河人家 2018-10-29 23:55:20 144730浏览量 回答数 40

162

回答

惊喜翻倍:免费ECS+免费环境配置~!(ECS免费体验6个月活动3月31日结束)

豆妹 2014-10-29 17:52:21 226162浏览量 回答数 162

8

回答

OceanBase 使用动画(持续更新)

mq4096 2019-02-20 17:16:36 337017浏览量 回答数 8

13

回答

[@饭娱咖啡][¥20]我想知道 Java 关于引用那一块的知识

心意乱 2018-10-31 18:44:12 142461浏览量 回答数 13

110

回答

OSS存储服务-客户端工具

newegg11 2012-05-17 15:37:18 295559浏览量 回答数 110

22

回答

爬虫数据管理【问答合集】

我是管理员 2018-08-10 16:37:41 147243浏览量 回答数 22

18

回答

阿里云开放端口权限

xcxx 2016-07-20 15:03:33 646800浏览量 回答数 18

31

回答

[@倚贤][¥20]刚学完html/css/js的新手学习servlet、jsp需要注意哪些问题?

弗洛伊德6 2018-10-27 21:52:43 146045浏览量 回答数 31

42

回答

【精品问答集锦】Python热门问题

小六码奴 2019-05-30 15:27:34 137000浏览量 回答数 42

10

回答

[@墨玖tao][¥20]为什么流式处理框架都是 java 写成的,JVM 是不是在流和批存在着特殊优势。还有分布式资源调度,感觉Mesos 的成长速度跟不上 Yarn。这是为什么?

管理贝贝 2018-10-23 13:18:03 136470浏览量 回答数 10
+关注
蛮大人123
我说我不帅他们就打我,还说我虚伪
0
文章
7733
问答
问答排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载