从零开始学java(十九)-- 方法重写

本文介绍了Java中方法重写的概念,它是实现多态性的关键。通过子类重写父类的方法,可以改变父类的行为。文章提供了一个交通工具体类(Vehicla, Horse, Plane)的示例,演示了如何重写`run`和`stop`方法,展示了不同交通工具的独特行为。
摘要由CSDN通过智能技术生成

从零开始学java(十九)-- 方法重写


子类通过重写父类的方法,可以用自身的行为替换父类的行为。方法的重写是实现多态的必要条件。

方法的重写需要符合下面的三个要点:

  1. “==”: 方法名、形参列表相同。
  2. “≤”:返回值类型和声明异常类型,子类小于等于父类。
  3. “≥”: 访问权限,子类大于等于父类。
package Chapter_5;
/**
 * 测试重写
 * @author 与猫子
 *
 */
public class TestOverride {

	public static void main(String[] args) {
		Vehicla v1 = new Vehicla();
		Vehicla v2 = new Horse();
		Vehicla v3 = new Plane();
		
		v1.run();
		v1.stop();
		v2.run();
		v2.stop();
		v3.run();
		v3.stop();
		
	}
}

class Vehicla{
	//交通工具类	
	public void run() {
		System.out.println("run......");
	}
	
	public void stop() {
		System.out.println("stop.....");
	}
}

class Horse extends Vehicla{
	//@override
	public void run() {
		System.out.println("run,der~~");
	}
	public void stop() {
		System.out.println("yu~~~~");
	}
}

class Plane extends Vehicla{
	//@override
	public void run() {
		System.out.println("fly~~~~");
	}
	public void stop() {
		System.out.println("you can't stop!");
	}
//public Plane testReturn() {
//	return new Vehicla();//出现报错,因为返回值类型大于Plane
	//这里返回值类型的大小比较可以在类名上按“Ctrl+T”显示类的继承树,可以看见Plane在Vehicla下面
//}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值