相关疑难解决方法(0)

在Java变量和方法名称中使用下划线

即使在今天,我经常在Java变量和方法中看到下划线,例如成员变量(如"m_count"或"_count").据我记忆,在这些情况下使用下划线被Sun称为坏风格.

他们应该使用的唯一地方是常量(比如"public final static int IS_OKAY = 1;"),因为常量应该都是大写而不是驼峰.这里,下划线应该使代码更具可读性.

你认为在Java中使用下划线是不好的风格吗?如果是这样(或不是),为什么?

java naming-conventions

81
推荐指数
9
解决办法
10万
查看次数

干净的代码 - 以下划线开头的受保护方法的目的是什么?

我正在阅读鲍勃叔叔的《干净的代码》。在第 16 章中,本书展示了如何重构示例。有一部分我无法理解这样写的目的。

  • 这里使用 protected 关键字的目的是什么?
  • 为什么有些方法以_getMinimumYear()下划线开头?
  • 为什么要使用一对同名的方法而不是像这样的抽象方法
    public abstract int getMinimumYear();

public abstract class DayDateFactory {

    private static DayDateFactory factory = new SpreadsheetDateFactory();
    public static void setInstance(DayDateFactory factory) {
        DayDateFactory.factory = factory;
    }

    protected abstract DayDate _makeDate(int ordinal);
    protected abstract DayDate _makeDate(int day, Month month, int year);
    protected abstract DayDate _makeDate(int day, int month, int year);
    protected abstract DayDate _makeDate(java.util.Date date);
    protected abstract int _getMinimumYear();
    protected abstract int _getMaximumYear();

    public static DayDate makeDate(int ordinal) { …
Run Code Online (Sandbox Code Playgroud)

java

4
推荐指数
1
解决办法
695
查看次数

“val = _val”前导下划线的含义是什么?它有什么深刻的用途或深刻的意义吗?爪哇语

在一道算法题“通过链表实现队列”中,解法显示首先创建 Node 类:

class Node {
    public int val;
    public Node next;
    public Node(int _val) {
        val = _val;
        next = null;
    }
}
Run Code Online (Sandbox Code Playgroud)

请问 的前导下划线是什么意思val = _val

java constructor default-constructor

-1
推荐指数
1
解决办法
413
查看次数