java学习11-面向对象(overload与overwrite)

成员函数的特点:重载(overload)

特点:在同一个类里面,函数名与返回值相同,参数的类型或者参数的个数不相同。

最有特色的重载函数是:构造函数

例子:
	// 无参构造方法
	public Person() {
	}

	// 重载构造方法
	public Person(String name, int age) {
		this.name = name;
		this.age = age;
	}

	/**
	 * 两个整数求和
	 * @param x
	 * @param y
	 * @return
	 */
	public int sum(int x,int y) {
		return x+y;
	}
	
	/**
	 * 三个整数求和
	 * @param x
	 * @param y
	 * @param z
	 * @return
	 */
	public float sum(float x,float y,float z) {
		return x+y+z;
	}


成员函数的特点:覆盖(overwrite)

特点:在继承体系中,子类跟父类的方法名、返回值类型以及参数完全一样,则子类方法  覆盖/复写/重写 overwrite父类方法。

使用时注意:

1. 子类覆盖父类时,必须要保证覆盖方法的权限大于等于被覆盖的方法的权限

2.返回值类型,参数名,参数名以及个数都必须相同

3.覆盖方法有静态修饰是,静态只能覆盖静态,或者被静态覆盖。


应用场景:

         继承父类的功能后,想要对已有的功能进行内容的改变,在不改变父类的元代码,功能声明不变,在新代码自定义扩展。

         基于父类的内容,扩展自己的内容:

         voidshow(){//覆盖父类

                   System.out.println(“myname”);

                   super.show();//继承父类

}


例子:
/**
 * 抽象类
 * 
 * @author DRAGON
 * 
 */
class Animal {
	void eat() {
	}
}

class Dog extends Animal {

	@Override
	void eat() {//覆盖父类方法,扩展自己的类容
		System.out.println("小狗在吃饭");
	}

	public void Home() {
		System.out.println("小狗在看门");
	}
}








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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值