重载和重写的定义
2015-12-13 09:44
281 查看
【重载】是指在一个类里面可以有多个方法名字相同的不同方法。但是方法的参数个数,顺序,不能相同,否则如何区分调用这些方法。
[作用]方便使用,如
System.out.print("It works.");
System.out.print(123456);//
这样你就可以直接调用而不用去管参数的具体类型,系统会根据你传递过去的参数,去调用相应的方法。(print(int arg)或者print(String arg))
【重写】是发生在当一个子类继承一个父类的时候,可以重写覆盖原来父类里面的方法(当然你也可以这几调用),当然这个方法和父类的方法名称一定要相同,参数也要相同,不然就不叫重写了。注意:有final修饰的方法不可以重写。
[作用]做你想做的,而不必大动干戈,加快开发。
你可以修改任何允许重载的类的方法,来达到你的目的,而不必重新写一个类。
如:
public class Father {
public void who() {
System.out.print("I am father");
}
}
public class Son extends Father {
public void who() {
System.out.print("I am the son");
}
public static void main(String args[]) {
Father f=new Father();
f.who();
Son s=new Son();
s.who();
}
}
最后作点补充:你也可以重载父类里面的方法。
[作用]方便使用,如
System.out.print("It works.");
System.out.print(123456);//
这样你就可以直接调用而不用去管参数的具体类型,系统会根据你传递过去的参数,去调用相应的方法。(print(int arg)或者print(String arg))
【重写】是发生在当一个子类继承一个父类的时候,可以重写覆盖原来父类里面的方法(当然你也可以这几调用),当然这个方法和父类的方法名称一定要相同,参数也要相同,不然就不叫重写了。注意:有final修饰的方法不可以重写。
[作用]做你想做的,而不必大动干戈,加快开发。
你可以修改任何允许重载的类的方法,来达到你的目的,而不必重新写一个类。
如:
public class Father {
public void who() {
System.out.print("I am father");
}
}
public class Son extends Father {
public void who() {
System.out.print("I am the son");
}
public static void main(String args[]) {
Father f=new Father();
f.who();
Son s=new Son();
s.who();
}
}
最后作点补充:你也可以重载父类里面的方法。
相关文章推荐
- bootstrap按钮组(二)
- 写一个简易web服务器、ASP.NET核心知识(4)--转载
- 神经网络入门
- CMAKE MYSQL
- Cordova:插件测试小结-cordova-plugin-test-framework
- Android Holo Theme的三种表现形式
- Linux 常用快捷键
- 方法的重载与重写有什么区别?
- Java中有返回值的线程,(缓存)线程池的初步使用
- 懒加载异常的解决办法
- Mysql数据导入测试
- Eclipse 新建Servlet出错问题
- 好友列表
- CSS-页面滑屏滚动原理
- 经验之谈—initWithFrame;initWithCoder;awakeFromNib
- [leetcode] Perfect Squares
- rsync远程同步
- Hyper-v Server检查点(虚拟机快照) 推荐
- 多线程循环批量处理以及多线程操作文件写入相关思路
- 程序员应该知道计算机基本原理