@ 오버라이드(Override) :
- 인자는 똑같아야 하고 리턴 유형은 호환 가능(같은 유형 혹은 하위클래스 유형)해야 한다.
- 접근단계를 유지하거나 완화시켜야 한다.(만약 반대로 접근단계를 강화한다면 public 메소드라고 생각하고 호출했는데 실행할때 오버라이드하는 버전이 private인 경우가 벌어진다.)
- 인자목록만 다르면 리턴 유형은 달라도 된다
- 리턴 유형만 바꿀 수는 없다.
- 접근단계를 마음대로 바꿀 수 있다.
- 인자의 유형이 같아도 순서가 다르면 오버로딩이 가능하다.