목록2024/10/13 (3)
HJW's IT Blog
Linked ListLinked List 특징이중 연결 리스트로, 각 요소는 이전 및 다음 요소에 대한 참조 를 가진다삽입 및 삭제 작업이 효율적이다요소들이 삽입된 순서대로 유지된다임의 접근 속도가 느리다 → 특정 인덱스 접근 시간 O(n)Queue 와 Deque를 지원메서드LinkedList list = new LinkedList();list.add(1); // 리스트 끝에 추가list.add(index, 1); // index 위치에 삽입list.addFirst(1) // 리스트의 첫번째에 삽입list.remove(); // 첫 요소 삭제list.remove(index); // index 위치 요소 제거list.removeLast()' // 마지막 요소 삭제list.get(index); // 특정 인..
GenericType 을 포괄적으로 일단 정의하겠다클래스나 메서드에서 타입을 미리 정하지 않고 외부에서 사용할 때 타입을 정하도록 하는 문법적 장치왜 사용하는가 → 어떠한 클래스를 만들었는데, 거의 똑같은 클래스를 또 만들어야 한다면 중복되는 부분이 많고 비효율적이다 → 중복을 최소화 하자!class Data{ int obj; Data(int obj){ this.obj = obj; } int getObj(){ return obj; } void printInfo(Integer obj){ System.out.println(obj.getClass().getName()); }}class Data2{ String obj; Data2(String ..
Staticjava 관점으로 static 은 ‘클래스의’ , 공통적인 이라는 의미를 가진다이러한 개념을 이해하기 java가 어떤 방식으로 동작하는지를 알 필요가 있다java application 을 실행하면 JVM 은 OS 로부터 메모리를 할당한다java 컴파일러가 java 소스코드를 바이트코드로 컴파일한다클래스 로더를 통해 JVM 메모리로 로딩한다로드된 클래스 파일들은 기계가 읽을수 없으므로 execution engine 을 통해 기계어로 변환된다이 과정에서 실행엔진에 의해 garbage collector 등도 동작된다즉, 자바는 용도에 따라 여러 영역으로 나누어 메모리를 관리한다. 메소드 영역 → 클래스 파일을 읽어 데이터를 저장하는 영역힙 영역 → 인스턴스가 생성되는 공간이다호출 스텍 → 메소드의 ..