자식 클래스로 덮어 쓸 수없는 기본 클래스에서 공용 메서드를 선언하고 싶습니다.
이 메서드를 public final로 선언하는 것이 깨끗합니까?
최종 방법을 원하는 합법적 인 이유가 있습니다. 기본 개체 참조는 파생 클래스 인스턴스를 가리킬 수도 있습니다. 따라서 메서드가 Base 클래스 참조를 가져 오는 경우 실제로 DerivedFromBase 개체를 가리킬 수 있습니다.
int SomeMethod(Base aBase)
{
...
double value = aBase.Calculate(a,b,c);
...
}
파생 클래스가 Calculate 메서드를 재정 의하여 Base와 다르게 작동하는 경우 Calculate가 Base에서 구현 한 방식으로 동작하도록 작성되었으므로 SomeMethod가 잘못 동작 할 수 있습니다.
Calculate 메서드를 final로 만들면 파생 클래스가 Calculate 메서드의 동작을 변경하지 않도록하여 SomeMethod가 Base 개체 또는 Base에서 파생 된 모든 개체를 전달하는지에 관계없이 동일하게 동작하도록합니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다