方法的重载与重写,自动转型与强制转型,多态的理解

方法重载与重写详解
本文详细介绍了方法重载与重写的含义及其区别,并通过示例解释了自动转型与强制转型的概念。此外,还提供了关于多态性的理解示例。
1.方法的重载与重写?
两者都是对于函数的操作,区别在于重载是在同一个作用域里定义多个同名,但参数类型和数量不同的方法,又名方法签名不同,就好像是两个同名的人一样;重写是存在于父类与子类之间的,子类重写父类中的方法,实现子类自己所需的功能,打个比方,儿子继承了父亲的卡车,原来是装货的,但现在儿子用它来拉人如:
///////////////////////////////////重载
Public void study(){}
Public void study(int hour){}
Public viod study(int hour,string name){}
//////////////////////////////////////重写
Class father{public void car(){拉货}}
Class son extends father{ public void car(){拉人}}

2.自动转型与强制转型?
自动转型与强制转型存在于很多情形,如不同数据类型之间的转化:
如 byte a=1; int b=a;//可以直接进行转型,即自动转型
int c=0;byte d =(byte)c; //不能直接转型必须进行强制装转换
也存在于父类与子类之间如 father f=new son();// son继承father 可以自动转型
son s= (father)f;//father 是父类,需要强制转换,而且这种转换也不安全,不建议使用

3.多态的理解?
////////////////////////测试部分
public class Testpeople {
public static void main(String[] args) {
people pp1= new adult();
pp1.showMessage();

people pp2 = new children();
pp2.showMessage();
}
}
////////////////////////基类
public class people {

public void showMessage(){
System.out.println("我是一个普通人");
}
}
//定义一个小孩类
public class children extends people{
public void showMessage(){
System.out.println("我是一个小孩");
}

}
//定义一个大人类
public class adult extends people{
public void showMessage(){
System.out.println("我是一个大人");
}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值