Java的多态

之所以特地的开一个博客,因为我觉得这个有些难度。

什么是多态

 

比如你是一个酒神,对酒情有独钟。某日回家发现桌上有几个杯子里面都装了白酒,从外面看我们是不可能知道这是些什么酒,只有喝了之后才能够猜出来是何种酒。你一喝,这是剑南春、再喝这是五粮液、再喝这是酒鬼酒….在这里我们可以描述成如下:

      酒 a = 剑南春

      酒 b = 五粮液

      酒 c = 酒鬼酒

      …  

这里所表现的的就是多态。剑南春、五粮液、酒鬼酒都是酒的子类,我们只是通过酒这一个父类就能够引用不同的子类,这就是多态——我们只有在运行的时候才会知道引用变量所指向的具体实例对象。

   这是我看到的很形象的定义,声明的方法也很简单。

父类 引用=new 子类();

其中,引用可以直接调用父类中已有的对象,但是无法直接调用子类中新增的对象,可以通过强制的类型转化就可以调用。IDEA自动会为你转换。

多态有什么用呢?在运行之前,程序不知道要用哪一个类型的方法,在运行中才会确认。

这种同一个父类的引用,可以放在一个数组里。声明方法是

Employee[] employee ={new Employee(),new Lawyer(),new Secretary()};
//使用
for(Employee e :employee)
{
***
}
或者for循环可以写成
for(int i=0;i<employee.length,i++)
{
***
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值