欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Java基础第10讲-面向对象之方法的重写和重载

程序员文章站 2022-05-28 14:24:26
...

1、方法的重载

方法的重载是指一个类中可以定义有相同的名字,但参数不同的多个方法。调用时,会根据不同的参数表选择对应的方法。方法的重载即:同名不同参

1.1、方法重载的补充说明

  • 参数不同指的是参数的类型不同或是参数的个数不同
  • 构造方法也可以重载

1.2、示例:方法重载同名不同参

public class Student {

	public void intro(String name) {
		System.out.println("我叫" + name);
	}

	public void intro(int age) {
		System.out.println("我今年" + age + "岁");
	}

	public void intro(String name, int age) {
		System.out.println("我叫" + name + "今年" + age + "岁");
	}
}


 

1.3、示例:重载构造方法

public class Student {

	private String name; // 姓名
	private int age; // 年龄

	public Student(String name) {
		this.name = name;
	}

	public Student(int age) {
		this.age = age;
	}

	public Student(String name, int age) {
		this.name = name;
		this.age = age;
	}

	public void intro() {
		System.out.println("我叫" + name + "今年" + age + "岁");
	}
}


2、方法的重写

方法重写基于继承,子类继承父类,子类可以调用父类的方法,同时子类也可以重写父类中的方法,来实现和父类中不同的业务处理逻辑。重写要求子类中方法与父类中的方法名称仙童,参数相同,参数类型相同。当子类调用该方法时,基类中的方法则被覆盖。方法重写即:重写父类方法,同名也同参

2.1、示例:动物会叫,叫声各不相同

动物类

public class Animal {

	public void speek(){
		System.out.println("动物都会叫");
	}
}


狗类,继承自动物类

class Dog extends Animal {
	
	/**
	 * 重写父类的speek方法
	 */
	@Override
	public void speek() {
		System.out.println("旺旺旺...");
	}
}



猫类,继承自动物类

class Cat extends Animal {
	
	/**
	 * 重写父类的speek方法
	 */
	@Override
	public void speek() {
		System.out.println("喵喵喵...");
	}
}