一个简单的设计问题。
示例代码:
Integer int1 = new Integer(20);
System.out.println(Integer.toBinaryString(int1));
为什么JDK的设计不是下面这样的?那么,toBinaryString 函数返回所需的结果?
System.out.println(int1.toBinaryString());
除了静态函数的广泛可用性之外,这种设计方法的其他原因是什么?他们是否使用任何特定的设计模式?如果是,那么是哪种模式?
最佳答案
这是因为你不能有两个同名的方法,一个是静态的,一个是实例的。再次为相同的功能使用两个不同的方法名称会让人感到困惑。
放入静态方法似乎更合乎逻辑,因为在这种情况下,您不必在获取其二进制表示之前将 int “包装”到 Integer 中,并且它有两个目的(二进制字符串用于 int
和 Integer
)。
关于java - 为什么 toBinaryString 不是 Integer 类中的实例方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6677954/