Java记录 -15- 面向对象之多态续
来源:互联网 发布:电信的客户端软件 编辑:程序博客网 时间:2024/06/05 00:51
Java 面向对象之多态续
多态:父类型的引用可以指向子类型的对象。
晚绑定是执行运行的时候确定类型,而不是编译的时候就进行确定。
Parent p = new Child(); 当使用多态方式调用方法时,首先检查父类中是否有该方法如sing(),如果没有则编译错误,如果有则再去调用子类的该方法如sing()。
一共有两种类型的强制类型转换:
1).向上类型转换(upcast):比如说将Cat类型转换为Animal类型,即将子类型转换为父类型。对于向上类型转换,不需要显式指定。
2).向下类型转换(downcast):比如将Animal类型转换为Cat类型。即将父类型转换为子类型。对于向下转换,必须显式指定(必须要使用强制类型转换)。
多态经典使用:
public class Car{
public void run(){}
}
public class BMW extends Car{
public void run(){}
}
public class VW extends Car{
public void run(){}
}
public class TestCar{
public static void main(String[] args){
TestCar tc = new TestCar();
Car bmw = new BMW
tc.test(bmw);
Car vw = new VW();
tc.test(vw);
}
public void test(Car car){
car.run();
}
}
test()方法接收一个Car父类参数,并调用其方法。但实际使用时,传递的是子类的对象,会对应调用子类的方法。这样所以子类都可以使用该方法。
- Java记录 -15- 面向对象之多态续
- Java记录 -14- 面向对象之多态
- JAVA-面向对象之多态
- Java面向对象之多态
- Java面向对象之多态
- JAVA面向对象之多态
- java面向对象之多态
- Java面向对象之多态
- java面向对象之多态
- Java面向对象之多态
- Java面向对象之多态
- 0811 Java面向对象特征之多态
- Java面向对象编程之多态(polymorphism)
- java面向对象(五)之多态
- Java面向对象四大特性之多态
- java--面向对象之多态1
- java--面向对象之多态2
- java--面向对象之多态3
- Java记录 -12- 方法重载与重写
- Boost Asio 中的线程和基本原理
- Java记录 -13- 面向对象之继承
- Java记录 -14- 面向对象之多态
- Leetcode 125 Valid Palindrome
- Java记录 -15- 面向对象之多态续
- Java记录 -16- 抽象类及接口
- Java记录 -17- static与final关键字
- Java记录 -18- static与final关键字续
- storm记录--11- Storm DRPC实战
- Maven 的assembly插件使用
- Maven assembly打包文件被覆盖问题
- Java记录 -19- 单例模式
- Java记录 -20- 包与导入语句