이 질문은 어리석은 것 같지만 마음에 분명히 들어야합니다.동적 바인딩 및 정적 바인딩
class J_SuperClass {
void mb_method() {
System.out.println("J_SuperClass::mb_method");
}
static void mb_methodStatic() {
System.out.println("J_SuperClass::mb_methodStatic");
}
}
public class J_Test extends J_SuperClass {
void mb_method() {
System.out.println("J_Test::mb_method");
}
static void mb_methodStatic() {
System.out.println("J_Test::mb_methodStatic");
}
public static void main(String[] args) {
J_SuperClass a = new J_Test();
a.mb_method();
a.mb_methodStatic();
J_Test b = new J_Test();
b.mb_method();
b.mb_methodStatic();
}
}
출력은 다음과 같습니다
J_Test::mb_method
J_SuperClass::mb_methodStatic
J_Test::mb_method
J_Test::mb_methodStatic
나는 동적 바인딩이 런타임에 발생하고 정적 바인딩이 컴파일시에 발생하는 것을 알고있다. 또한 동적 바인딩의 경우 객체의 실제 유형에 따라 호출되는 메소드가 결정됩니다. 그래서 내 질문에 위의 코드에서 단어 "정적"정적 바인딩 및 따라서 개체의 DECLARED 형식 호출되는 메서드를 결정합니다?
@ user1109363 Re : 귀하의 소금에 관한 질문을 한 번보세요 [여기] (http://stackoverflow.com/questions/12724935/salt-and-passwords) 및 [here] (http://stackoverflow.com/questions/420843/how-does-password-salt-help-a-rainbow-table-attack) – StuartLC