java - 方法重载未按预期工作
问题描述
我是 Java 新手,想学习方法重载,有点困惑。这是我的程序
class Adder {
static void add(int a, int b) {
System.out.println("a method invoked");
}
static void add(long a, int b) {
System.out.println("b method invoked");
}
}
class TestMethodOverloading {
public static void main(String[] args) {
Adder.add( 9223372036854775807,12);
}
}
我收到编译器错误说
java: integer number too large
我很困惑为什么这里没有调用带有参数 long 的方法添加?
解决方案
你错过了数字末尾的 L 表示它很长。
推荐阅读
- java - 如果包名不同,则无法从导入的 jar 中调用方法
- micronaut - 在 micronaut 中创建可组合的存储库
- mysql - mysql - 创建前检查
- .net - 无法从 .NET 中的 app.config 检索 ConnectionString
- oauth - 向 eBay 发出简单的授权请求
- java - 如何对一组链接节点进行排序。(按优先级值对顺序链接的节点进行排序。)
- r - R 相当于 Stata 在宏上的 for 循环
- c++ - 终端不会为 C++ 文件创建 .exe 文件?
- pandas - 使用 GeoPandas 从点创建多边形
- asp.net-mvc - 我正在尝试下面给定的代码,但它显示错误 CS0051