Java 方法重载(overload)、方法重写(override)和可变参数列表
2016-04-16 22:08
232 查看
生活就是一系列的一系列的机会成本。
方法重载和方法重写是Java相关工作面试时经常问到的一个问题,我第一次问题也回答了这个问题。可变参数列表是JDK 1.5的新特性。
一、方法重写(override)
方法重写是出先在类的继承中的。比如父类:Animal.java
public class Animal{ public void sleep(){ System.out.println("动物需要睡觉"); } public void eat(){}//动物吃东西 }
子类:Dog.java
public class Dog extends Animal{ public void sleep(){ System.out.println("小狗需要睡觉"); } }
Dog类继承Aniaml类,所以Dog类应该有父类的方法,sleep()方法就是从父类中继承来的,方法名相同,返回值相同,参数类表相同,但是方法体中的内容不同,所以我们把从父类继承来,但是修改过的方法叫做方法重写。
二、方法重载(overload)
方法重载是发生在同一个下面的。例如:public class Operationg{ public double add(int a,int b){ return a+b; } public double add(int a,int b,int c){ return a+b+c; } }
如上面两个add()方法,参数名相同,返回值相同,只有参数列表不同的两个方法叫做重载方法。
三、可变参数列表
可变参数列表是JDK 1.5添加的新特性。如下:public class VarialeParameters { //固定参数列表 public int add(int a,int b,int c){ return a+b+c; } //可变参数列表 public int add(int a,int b,int...c){ int sum = 0; for(int i = 0;i<c.length;i++){ sum = sum + c[i]; } sum = sum + a + b; return sum; } }
我们可以发现,调用可变参数列表时,隐含创建了一个数组,在方法体中,以数组的形式访问可变参数。
相关文章推荐
- java-内存结构学习
- spring框架学习笔记(一)
- Java语法基础-数组
- spring websocket 初次了解
- download and install the jdk1.8 on ubuntu14.4
- 20145222黄亚奇《Java程序设计》实验二实验报告
- Java学习之集合框架
- windows可执行文件调用jar包执行java程序-toolsRun.bat
- 安卓eclipse与genymotion模拟器关联的插件解决办法
- 修改myeclipse 自动提示只有.abc
- 排序算法Java实现
- java BIO NIO AIO 理论篇
- 使用 Gradle 编译 Java 项目时报错: Could not find Tools.jar
- Java语法基础-函数
- mysql 保存手机输入法的数据报错org.springframework.jdbc.UncategorizedSQLException: PreparedStatementCallback
- java区别(String)和toString()的区别
- spring 详解AOP
- hadoop平台搭建(2)--jdk的安装及配置
- Java基础复习(四)
- Java SE 基础知识