이 documentation page of interfaces on dlang.org에 인터페이스는 최종 메소드를 구현해야한다고 말합니다. 최종 방법은 무엇입니까? 키워드가 다른 페이지에서 언급되지 않은 것 같습니다.'최종'키워드는 무엇을 의미합니까?
내가 찾은 것이 this page이지만, 고대 D1에서 남아있는 것으로 보입니다.
최종 함수는 단순히 불변 결과를 반환하는 함수입니까? 키워드가 아직 존재합니까?
이 documentation page of interfaces on dlang.org에 인터페이스는 최종 메소드를 구현해야한다고 말합니다. 최종 방법은 무엇입니까? 키워드가 다른 페이지에서 언급되지 않은 것 같습니다.'최종'키워드는 무엇을 의미합니까?
내가 찾은 것이 this page이지만, 고대 D1에서 남아있는 것으로 보입니다.
최종 함수는 단순히 불변 결과를 반환하는 함수입니까? 키워드가 아직 존재합니까?
최종 함수는 하위 클래스 (가상 함수의 반대)에서 재정의 할 수없는 함수입니다.
모든 템플릿은 최종 템플릿이므로 인터페이스의 템플릿에는 기능 본문이 있어야합니다. 그렇지 않으면 링커 오류가 발생합니다. Virtual Functions에서
: 그들은 private
도하지 않는 한 final
로 표시
기능은 파생 클래스에서 재정의 할 수 없습니다. 옆에
어떤 다른 답변이 말했다 : ". 그들은`도 private`하지 않는 한"
이인터페이스가 최종 기능을 지정하고 직접
interface Foo{
int bar();
final int doublefoobar(){
return bar()*2;
}
}
그것을 구현할 수 - 누구나 설명 할 수있어? 어떻게 파생 클래스에서 개인 최종 메서드를 재정의 할 수 있습니까? –
@Sebastian 문구가 약간 틀린 것 같아요. 전용 함수는 파생되지 않으므로 여기서 "재정의 됨"은 동일한 이름의 파생 클래스에 함수가 있음을 의미합니다. 이 두 함수는 서로 연결되어 있지 않으므로 'final'한정자는 적용되지 않습니다. – OdraEncoded