class Base {
public void amethod(int i) {
}
}class Scope extends Base {
public static void main(String[] args) {
}
//Method Here
}void amethod(long i) throws Exception{}
void amethod(long i){}把下面2个方法放到 //Method Here 里面,这叫过载还是叫重新定义?
public void amethod(int i) {
}
}class Scope extends Base {
public static void main(String[] args) {
}
//Method Here
}void amethod(long i) throws Exception{}
void amethod(long i){}把下面2个方法放到 //Method Here 里面,这叫过载还是叫重新定义?
解决方案 »
- 这个问题能用程序来解决么?
- 使用Scanner的nextInt()进行键盘输入的问题
- 请问 thinking in java 4th edition 的源代码有没有下载?
- Jar文件签名问题
- [共享]澄清大部分人的一个误区:try{}catch{}finally{}中的return语句--->顶者有分!
- 怎么不用第三个变量实现a,b的值交换
- 找工作被人开了五百块,心情DOWN,散分
- 帮忙,绝对兑现,急
- 向量的奇怪问题,高手请进!!
- 老话重提,如何将.class编译为.exe在无jre的平台运行?
- tif转pdf,Java heap space如何处理
- 请高手指点,如果控制下载的带宽~~~~~多谢
try {
Scope.amethod(1);
}catch (Exception e) {
}就这样的调用, 你认为是调用哪个函数?
调用抛出异常的那个? 对!
调用没有抛出异常的那个? 也对,谁说加了异常处理语句的操作(Scope.amethod(1))就一定要抛出异常的??
void amethod(long i){} 也应该是public的。
void amethod(long i){}
这2个方法随便放上去一个 叫做方法的重载(Overload) 不知道你说的过载是不是这个
Overload指同样的方法名可以有不同的参数列表
当然,不能2个一起放上去 - -#
如果你子类要放上一个 参数为int的同名方法,这个叫方法的重写(Override),也叫覆盖
此时权限不能比父类的小,抛出的异常不能比父类的大
也就是说 修饰符只能是public (因为父类里面是public)
不能抛出异常(因为父类没有抛),当然 可以抛RuntimeException,因为这个不用try/catch