重写与重载的区别(override/overload)
重写
1  在父类与子类之间发生
2  方法名字,参数,返回类型相同
3  子类方法中的修饰符比父类中的权限大
重载:
1  在同一个类中发生
2  方法名相同,参数类型,数量必须不同
3  权限范围无要求
一方法的重写:
//首先写一个父类
public class Person
{
  String name;
  int age;
  String sex;
    
  public String showName()
  {
    return name;
  }
  public void setName(String theName)
  {
    name = theName;
  }
    
  public int getAge()
  {
    return age;
  }
  public void setAge(int theAge)
  {
    age = theAge;
  }
    
  public String getSex()
  {
    return sex;
  }
  public void setSex(String theSex)
  {
    sex = theSex;
  }    
}
子类中:
public class Teacher extends Person
{
  //扩充父类属性
  private String department;
  //扩充父类方法
  public void setDepartment(String theDept)
  {
    department = theDept;
  }
  public String getDepartment()
  {
    return department;
  }
    
  //方法重写
  public String showName()
  {
    return name+"老师";
  }
  //测试
  public static void main(String[] args)
  {
    Teacher t = new Teacher();
    t.setName("Alex");
    System.out.println(t.showName());
  }    
}
-----------------------------------------------------------------------------------------------
二方法的重载:
在进行方法重载的时候有4条基本原则:
1 方法名字相同;2 参数列表必须不同; 3 返回值可以不同 4 可以相互调用
public class Person {
        public String getName() {
                return name;
        }
        public String getName(String title) {
        return name + title;
        }
}