Java重载:
- 在同一个类中
- 方法具有同样的名字,同样或不同的返回值,但參数不同的多个方法(參数个数或參数类型)
public class MethoDemo{ public static void main(String args[]){ int one = add(10,20) ; // 调用整型的加法操作 float two = add(10.3f,13.3f) ; // 调用浮点数的加法操作 int three = add(10,20,30) ; // 调用有三个參数的加法操作 System.out.println("add(int x,int y)的计算结果:" + one) ; System.out.println("add(float x,float y)的计算结果:" + two) ; System.out.println("add(int x,int y,int z)的计算结果:" + three) ; } // 定义方法,完毕两个数字的相加操作。方法返回一个int型数据 public static int add(int x,int y){ int temp = 0 ; // 方法中的參数,是局部变量 temp = x + y ; // 运行加法计算 return temp ; // 返回计算结果 } public static int add(int x,int y,int z){ int temp = 0 ; // 方法中的參数,是局部变量 temp = x + y + z ; // 运行加法计算 return temp ; // 返回计算结果 } // 定义方法,完毕两个数字的相加操作,方法的返回值是一个float型数据 public static float add(float x,float y){ float temp = 0 ; // 方法中的參数,是局部变量 temp = x + y ; // 运行加法操作 return temp ; // 返回计算结果 }};输出结果:
add(int x,int y)的计算结果:30
add(float x,float y)的计算结果:60
add(int x,int y,int z)的计算结果:23.6
Java覆写:
- 子类覆写父类的方法,在不同的类中
- 重写方法必须和被重写方法具有同样方法名称、參数列表和返回类型
- 重写方法不能使用比被重写方法更严格的訪问权限
class Person{ // 定义父类 void print(){ // 默认的訪问权限 System.out.println("Person --> void print()。") ; }};class Student extends Person{ // 定义继承关系 public void print(){ System.out.println("Student --> void print()。") ; }};public class OverrideDemo{ public static void main(String args[]){ Student s = new Student() ; s.print() ; }};输出结果:
Student --> void print()。
小结:
java的三大特性:封装,继承,多态.而方法的重载和覆写正是多态的体现.