Computer Science27 Class Loader에 대해서 * Intro - Java는 컴파일 시점이 아닌 런타임 시점에 클래스를 로드하고 링크 하는 동적 로딩 방식을 사용한다.이때 각 클래스를 동적으로 로드하는 역할을 Class Loader( 클래스 로더 )가 담당한다. - 동적 로딩은 loading - link - init (로딩 - 링크 - 초기화) 과정을 거쳐 명령을 실행한다. * 로딩 - 바이트코드를 메서드 영역에 적재한다. - JVM은 메서드 영역에 읽어온 바이트 코드들의 정보를 저장한다. ( 아래와 같다 ) a) 로드된 클래스와 그 부모 클래스 정보. b) 클래스 파일과 Class, Interface, Enum 관련 여부. c) 변수나 메서드 정보. * 링크 a) 검증 - 읽어온 클래스가 자바 및 JVM 명세에 명시된 대로 잘 구성.. 2024. 11. 19. Call by Value 와 Call by Reference 란? * Call by Value 와 Call by Reference 의 차이점 - Call by Value는 값을 복사하는 것이고, Call by Reference는 주소값을 복사하는 것이다. - 참고로 자바는 Call by Value 방식을 사용하며, Call by Reference 는 존재하지 않음.the Java authors choose to only include one simple idea - pass-by-value, with no default values or optional parameter (overloading often provides a satisfactory alternative), no variable length parameter lists (added finally in Ja.. 2024. 11. 18. 동기 Async 와 비동기 ASync * 동기와 비동기 개념 - 동기 (sync) : A라는 작업이 끝나는 동시에 B라는 작업을 시작한다.public class AsyncExample { public static void main(String[] args) { /* 작업1 시작 */ try { Thread.sleep(1500); } catch (InterruptedException e) { e.printStackTrace(); } /* 작업1 종료 */ /* 작업2 시작 */ try { Thread.sleep(500); } catch(InterruptedExcep.. 2024. 11. 18. 이전 1 2 3 4 5 다음