method2 26.메서드 재정의와 가상메서드 원리 메서드는 어떻게 호출되고 실행되는가 - 메서드(함수)의 이름은 주소값을 나타냄 - 메서드는 명령어의 set이고 프로그램이 로드되면 메서드 영역(코드 영역)에 명령어 set이 위치 - 해당 메서드가 호출되면 명령어 set이 있는 주소를 찾아 명령어가 실행됨 - 이때 메서드에서 사용하는 변수들은 스택 메모리에 위치하게됨 - 따라서 다른 인스턴스라도 같은 메서드의 코드는 같으므로 같은 메서드가 호출됨 - 인스턴스가 생성되면 변수는 힙 메모리에 따로 생성되지만, 메서드 명령어 set은 처음 한번만 로드 됨 가상 메서드의 원리 - 가상 메서드 테이블(virtual method table)에서 해당 메서드에 대한 address를 가지고 있음 - 재정의된 경우는 재정의된 메서드의 주소를 가리킴 2022. 5. 24. 3.함수와 메서드 함수란(function) - 하나의 기능을 수행하는 일련의 코드 - 구현된(정의된) 함수는 호출하여 사용하고 호출된 함수는 기능이 끝나면 제어가 반환됨 - 함수로 구현된 하나의 기능은 여러 곳에서 동일한 방식으로 호출되어 사용될 수 있음 함수 정의하기 - 함수는 이름, 매개 변수, 반환 값, 함수 몸체(body)로 구성됨 public static int addNum(int num1, int num2) { int result; result = num1 + num2; return result; } 함수 구현하기 예제 public class FunctionTest { public static int addNum(int num1, int num2) { int result; result = num1 + num2;.. 2022. 5. 18. 이전 1 다음