override和Java overload的定义及异同点分析
方法的重写(Overriding)和重载(Overloading)是Java多态性的不同表现。重写(Overriding)是父类与子类之间多态性的一种表现,而重载(Overloading)是一个类中多态性的一种表现。
如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (Overriding)。子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被"屏蔽"了。
如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型或有不同的参数次序,则称为方法的重载(Overloading)。不能通过访问权限、返回类型、抛出的异常进行重载.
1.方法重载(overload)
概念:简单的说:方法重载就是类的同一种功能的.多种实现方式,到底采用哪种方式,取决于调用者给出的参数。
注意事项:
(1)方法名相同
(2)方法的参数类型、个数、顺序不至少有一项不同
(3)方法返回类型可以不同
(4)方法的修饰符可以不同
如果只是返回类型不一样,不能够构成重载
如果只是控制访问修饰符号不一样,也是不能构成重载的
Overloaded的方法是可以改变返回值的类型。
2.方法覆盖(override)
概念:简单的说:方法覆盖就是子类有一个方法,和父类的某个方法的名称、返回类型、参数一样,那么我们就说子类的这个方法覆盖了父类的那个方法。
注意事项:方法覆盖有很多条件,总的讲有两点一定要注意:
(1)子类的方法的返回类型,参数,方法名称,要和父类方法的返回类型,参数,方法名称完全一样,否则编译出错。
(2) 子类方法不能缩小父类方法的访问权限(反过来是可以的)
例:
Overrride实例
复制代码 代码如下:
class A{
public int getVal(){
return(5);
}
}
class B extends A{
public int getVal(){
return(10);
}
}
public class override {
public static void main(String[] args) {
B b = new B();
A a= (A)b;//把 b 强 制转换成A的类型
int x=al();
tln(x);
}
}
Overload实例
package an;
//Demostrate method voerloading.
class OverloadDemo {
void test(){
tln("NO parameters");
}
void test(int a){
tln("a:"+a);
}//end of Overload test for one integer parameter.
void test(int a, int b){
tln("a and b:"+a+" "+b);
}
double test(double a){
tln("double a:"+a);
return a*a;
}
}
class Overload{
public static void main(String[] args) {
OverloadDemo ob = new OverloadDemo();
double result;
();
(10);
(10, 20);
result = (123.25);
tln("Result of (123.25):"+result);
}
}
-
java读取解析xml文件实例
如何在Java中读取解析文件呢?下面小编为大家整理了java读取解析xml文件实例,希望能帮到大家!读取本地的xml文件,通过DOM进行解析,DOM解析的特点就是把整个xml文件装载入内存中,形成一颗DOM树形结构,树结构是方便遍历和和操纵。DOM解析的特性就是读取xml文件转换为dom...
-
java考试复习题
人类的希望像是一颗永恒的星,乌云掩不住它的光芒。特别是在今天,和平不是一个理想,一个梦,它是万人的愿望。以下是小编为大家搜索整理的java考试复习题,希望能给大家带来帮助!更多精彩内容请及时关注我们应届毕业生考试网!一、选择题1、以下程序段执行后的K值为()。...
-
如何学好Java语言编程
决定好想学什么编程语言了吗,现在就让我们开始学习吧。所有你需要做的就是打开一本书,然后开始阅读,是这样的吗?不全是这样的。learn-first我会给出学习第一门编程语言的理想方法布局,你不仅应该学习这个布局方法,还应该享受精通它——如果不能掌握的话。学习第一门...
-
Java技术怎么学习
对于很多只会C语言的初学者而言,面对java基础语法学习,反而感觉很难,其实其中最大的问题不是语法难,而是一种编程思想的转变。怎么学习才是正确的呢?下面是相关的知识,欢迎阅读。1.概述学过一段时间的同学一定会觉得Java学习最头疼的不是语法结构的繁杂,而是Java本身...
相关文章
- 《科洛弗悖论(The Cloverfield Paradox)》的经典台词
- Diaspora Finance Powers Global Development美文欣赏
- Adobe认证Macromedia Dreamweaver8考试大纲
- Jolie drops battle over perfume named Shilohy英语作文
- 英语作文Never judge a book by its cover
- 关于javascript中encodeURI和decodeURI的使用方法
- jQuery中的read和JavaScript中的onload函数的区别在哪
- Djokovic Fulfilled Career Grand英语作文
- The Development of a Private Car英语作文
- 英语阅读:Covergirl unveils empowering brand update