多态的概念
多态,是指允许程序中出现重名的现象
在java中的体现
在java面向对象编程中,具体表现在如下两个方面:
1. 方法重载
即在同一个类中允许出现同名的方法,只要他们的参数个数或者类型不同即可。这种情况下,该方法就叫被重载了,这个过程称为方法的重载。
2. 成员覆盖
具体表现在方法重写和属性覆盖这两方面;
- (1).方法重写:即允许子类中出现与父类中同名且参数相同的方法。
另:需注意在方法重写时访问控制不能比该方法在父类中的更严格。 - (2).属性覆盖:即允许子类和父类拥有同名变量。注意,变量的类型可以相同也可以不同。
常见的表现
1. 方法重载
在java编程中,通常一个类会有多个构造方法,它们的参数类型或参数个数不同,这就是方法重载。
2. 方法重写
Android开发中,在每个“Activity”的onCreate()方法中要写点自己的业务代码,实质是重写Activity的onCreate()方法,这就是方法的重写。
重写VS重载
简而言之:
- 重写:同名且同参
- 重载:同名不同参