10.2.3 重载与覆盖的实例对比
【实例10.5】重载则是方法的参数不一样,下面是有关重载与覆盖的比较。
01 ///创建一个学生的主运行类
02 ///将三个带不同参数的方法运行
03 public class student4
04 {
05 void print()
06 {
07 System.out.println("这是我的同学");
08 }
09 void print(String name)
10 {
11 System.out.println("这是小明的同学"+name);
12 }
13 public static void main(String[]args)
14 {
15 student4 st=new student4();
16 student5 st1=new student5();
17 st.print();
18 st.print("tom");
19 st1.print();
20 }
21 }
22 ///学生类5继承学生类4
23 class student5 extends student4
24 {
25 void print()
26 {
27 System.out.println("这是小明的同学");
28 System.out.println("他很优秀的");
29 }
30 }
【代码说明】以上程序段主要说明了重载和覆盖的一个区别,“void print()”与“void print(string name)”属于重载,而父类的“print()”和子类的“print()”属于覆盖。
说明 多态有两种表现形式(重载和覆盖)。
【运行效果】
这是我的同学
这是小明的同学tom
这是小明的同学
他很优秀的