JAVA面向对象 - 方法重载与覆盖
方法重载
方法重载就是在类的同种实现方式,到底采用哪种方式,取决与调用者给出的参数。方法重载特点是方法名相同,方法的参数类型,个数,顺序至少有一项不同,方法返回类型可以不同,方法的修饰符可以不同,只是返回类型不一样,不能构成重载
实例
package com.beekc.www;
public class Beekc {
public static void main(String[] args) {
Max c = new Max();
System.out.println("大的数(int型):" + c.add(,));
System.out.println("大的数(float型):" + c.add(1.9f,0.3f));
}
}
class Max
{
//定义方法
public int add(int a, int b)
{
if(a>b){
return a;
}
else
{
return b;
}
}
//重载方法
public float add(float a, float b)
{
if(a>b){
return a;
}
else
{
return b;
}
}
}
运行结果

方法覆盖
子类可以继承父类的属性和方法,这样可以提高代码的复用性,这个很号,但问题来了,如果父类与子类都定义一个叫cry的方法,那调用者调用此方法时是用哪个呢?规则是这样的,父类与子类都有这个方法时,子类的cry方法会覆盖父类的cry方法,当只有父类有这个方法,就直接调用父类的,子类也是相同的。
注意事项
Ⅰ.子类的方法的返回类型,参数方法名称,要和父类方法的返回类型,参数,方法名称完全一样,否则编译出错。
Ⅱ.子类方法不能缩小父方法的访问权限。
实例
package com.beekc.www;
public class Beekc {
public static void main(String[] args) {
Cat cat = new Cat();
cat.cry();
Dog dog = new Dog();
dog.cry();
}
}
class Animal
{
int age;
String name;
public void cry()
{
System.out.println("我是动物,系统不知道怎么叫!");
}
}
class Cat extends Animal
{
public void cry()
{
System.out.println("我是猫,喵喵叫~");
}
}
class Dog extends Animal
{
}
运行结果

JAVA面向对象 - 方法重载与覆盖的更多相关文章
- Java面向对象----方法重载
方法重载(over load):方法名相同,参数列表不同,返回类型无关 package com.tanlei.newer; public class OverLoadDemo { public sta ...
- Java面向对象-方法的重载
Java面向对象-方法的重载 所谓方法的重载, 类里面有两个或者多个重名的方法,但是方法的参数个数.类型.顺序至少有一个不一样,这时候局构成方法重载: 上代码: package com.java123 ...
- Java基础-方法重载和方法重写的区别
什么是java方法重载 (1) 方法重载是让类以统一的方式处理不同类型数据的一种手段.多个同名函数同时存在,具有不同的参数个数/类型. 重载Overloading是一个类中多态性的一种表现. (2) ...
- Java之方法重载篇(我重载了,你要如何来调用我。。)
一.课前引言 请看一下代码,你发现什么特殊之处了吗? public class MethodOverload { public static void main(String[] args) { ...
- Java面向对象-方法的值传递和引用传递
Java面向对象-方法的值传递和引用传递 0 发布时间:『 2016-08-21 14:21』 博客类别:Java核心基础 阅读(197) 评论(0) Java面向对象-方法的值传递和引用传递 方 ...
- java的方法重载
1丶java的方法重载特性 满足以下条件的两个或多个方法构成“重载”关系:(1)方法名相同 (2)参数类型不同,参数个数不同或者参数类型的顺序不同 像System.out.println一样,就是重载 ...
- Java-Runoob-高级教程-实例-方法:01. Java 实例 – 方法重载
ylbtech-Java-Runoob-高级教程-实例-方法:01. Java 实例 – 方法重载 1.返回顶部 1. Java 实例 - 方法重载 Java 实例 先来看下方法重载(Overloa ...
- Java笔记 —— 方法重载和方法重写
Java笔记 -- 方法重载和方法重写 h2{ color: #4ABCDE; } a{ text-decoration: none !important; } a:hover{ color: red ...
- Java重写、重载与覆盖
Java继承.重载与重写 一.继承(单继承) 1.利用extends关键字一个方法继承另一个方法,而且只能直接继承一个类. 2.当Sub类和Base类在同一个包时,Sub类继承Base类中的publi ...
随机推荐
- python文件、文件夹的相关操作
python文件.文件夹的相关操作 #1.rename()可以完成对文件的重命名 #rename(需要修改的文件名,新的文件名) import os os.rename("readme.tx ...
- 下载 安装MYsql 服务器
摘自 https://blog.csdn.net/youxianzide/article/details/85319106 https://www.2cto.com/database/201805/7 ...
- 七、django学习之聚合函数
七.django学习之聚合函数 如何使用 from django.db.models import Avg,Max,Min,Sum models.Book.objects.all().aggregat ...
- js代码预解析
1.var一般用于声明变量,预解析代码的时候,等号后面的赋值过程不会执行,所以预解析时的var变量都是未定义的 2.function声明的函数,预解析的时候,值就是函数里面的内容 例:console. ...
- 快速理解YOLO目标检测
YOLO(You Only Look Once)论文 近些年,R-CNN等基于深度学习目标检测方法,大大提高了检测精度和检测速度. 例如在Pascal VOC数据集上Faster R-CNN的mAP达 ...
- CCF_201612-1_最大波动
http://115.28.138.223/view.page?gpid=T47 水. #include<iostream> #include<cstring> #includ ...
- HYSBZ_1854_并查集
http://www.lydsy.com/JudgeOnline/problem.php?id=1854 每次判断每组两个数的根,若不等,则小的遍历1,大的为根,若相等,则说明前面的小的都遍历过,根遍 ...
- PC微信逆向--实现消息防撤回
自从聊天软件消息撤回功能问世后,对于撤回的消息,我们对它一直有种强烈的好奇感."Ta刚撤回了什么?是骂我的话?还是说喜欢我?还是把发给其他人的消息误发给了我?好气呀,都看不到了...&quo ...
- php 搭建webSocket
<?php //2.设计一个循环挂起WebSocket通道,进行数据的接收.处理和发送 //对创建的socket循环进行监听,处理数据 function run(){ //死循环,直到socke ...
- 自己用C语言写RH850 F1L serial bootloader
了解更多关于bootloader 的C语言实现,请加我QQ: 1273623966 (验证信息请填 bootloader),欢迎咨询或定制bootloader(在线升级程序). 由于有了RH850 F ...