黑马程序员技术交流社区
标题:
final修饰的方法可以被重载吗
[打印本页]
作者:
hellotaomi
时间:
2015-5-28 11:22
标题:
final修饰的方法可以被重载吗
我都知道被final修饰的方法不能被覆盖,但是能被重载吗,网上我搜索了一下,有说可以的也有说不可以的,那到底可不可以呢?求大神解答!
作者:
zouzouzou
时间:
2015-5-28 12:01
我觉得应该可以,覆盖是将之前的方法重写,但是重载是参数或返回值不同。。
作者:
小悟空et
时间:
2015-5-28 12:15
试了一下,没问题
public class ShiYan {
public static void main(String[] args)
{
Methods m = new Methods();
m.Out1(5);
m.Out1("haha", 5);
}
}
class Methods
{
public final void Out1(int x )
{
System.out.println("Out1 number is "+x);
}
public void Out1(String s,int x )
{
System.out.println("Out2 number is "+x+";String is "+s);
}
}
复制代码
结果
Out1 number is 5
Out2 number is 5;String is haha
作者:
huadengaiyue
时间:
2015-5-28 12:24
不能
作者:
string1
时间:
2015-5-28 12:26
好像不能
作者:
白水丶
时间:
2015-5-28 12:33
应该可以吧,不太清楚
作者:
Z-CQ
时间:
2015-5-28 12:38
好给力啊,赞一个
作者:
南山忆
时间:
2015-5-28 13:14
两个不同的函数,当然可以
作者:
zheng72566
时间:
2015-5-28 13:33
围观学习
作者:
canyellwang
时间:
2015-5-28 14:11
学习~~~~~~~~~~
作者:
Always,
时间:
2015-5-28 15:18
围观学习、
作者:
星辉祝愿
时间:
2015-5-28 15:40
围观学习
作者:
zhangjnia
时间:
2015-5-28 17:31
应该可以
作者:
KK要有光
时间:
2015-5-28 18:27
inal—修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为 abstract的,又被声明为final的。将变量或方法声明为final,可以保证它们在使用中不被改变。被声明为final的类变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。局部变量声明时可以不赋值,生命周期内只能赋值一次。被声明为final的方法也同样只能使用,不能重写(子类覆盖),可以重载。
作者:
lucien_he
时间:
2015-5-28 18:34
围观学习~
作者:
zw937820438
时间:
2015-5-28 18:54
final修饰的最终变量,其实是一个常量,不可以被重写
作者:
L番茄X
时间:
2015-5-28 18:57
老师讲是最终的.不过它还可以赋值一次,就是在定义final的时候没有赋值,就可以再赋值一次.
作者:
gaoer
时间:
2015-5-28 19:10
不明绝力啊~~~~~~~~~!
作者:
zhw634631
时间:
2015-5-28 20:02
不同的函数
作者:
fried_lai
时间:
2015-5-28 20:21
看你们的评论把我搞乱了,到底是能呢还是能呢,还是不能
作者:
守株人
时间:
2015-5-28 20:59
不能被覆盖,覆盖就是重写,是子类重写父类的,final不能被重写(覆盖)
作者:
a397131103
时间:
2015-5-28 21:08
这点我也不清楚 希望学霸们给个好的回答
作者:
ZYZQ
时间:
2015-5-28 21:16
试一下就好了;额
作者:
开弓没有回头箭
时间:
2015-5-28 22:21
可以重载,不能覆盖
作者:
灞波儿奔
时间:
2015-5-28 22:53
可以重载
作者:
唐海
时间:
2015-5-28 22:58
肯定能啊,不能重写跟重载有毛线关系啊
作者:
Lucus
时间:
2015-5-28 23:15
学习了,这个真不懂啊!!
作者:
wuyusi
时间:
2015-5-28 23:22
可以重载,不能复写
作者:
半世心修
时间:
2015-5-28 23:32
重载嘛,那就不是一个方法了~
作者:
途中ms前进
时间:
2015-5-28 23:44
围观学习
作者:
luxinyu
时间:
2015-5-29 00:14
应该是可以的。。final修饰的方法在子类是不可见的,所以不能被覆盖,即使出现相同方法也不会被看作是覆盖 但是final修饰的方法还是可以被重载的
作者:
武汉小菜鸟
时间:
2015-5-29 00:19
被final修饰的方法不能被覆盖,(没有说不可以被重载),不信,你写一个程序就知道了
作者:
!85684009ex
时间:
2015-5-29 07:37
膜拜大神!这个不能!
作者:
全是爱
时间:
2015-5-29 07:50
你试一下不就知道了
作者:
qian0217wei
时间:
2015-5-29 08:12
当然可以!两个不同的函数
作者:
张海旭
时间:
2015-5-29 21:26
顶顶顶:victory:
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2