Java

Goal static 메모리 구조 static 이란? static 을 사용하는 이유 static 변수란? static 메소드란? static 블록이란? 참고 static 블록, static 메소드, static 변수 초기화 시점 [Class Loader] 클래스 로딩 시점 / 클래스 로딩 / 클래스 초기화 시작하기 전 ... 싱글턴을 생성하는 방법 중 Eager Initialization의 단점은 인스턴스를 미리 생성하기 때문에, 사용하지 않을 경우 메모리 점유로 인한 자원낭비가 된다였다. 여기서 나의 의문의 시작 dev-rosiepoise.tistory.com static 메모리 구조 static 영역 heap 영역 우리가 만든 클래스 new 연산을 통해 생성한 객체 모든 객체가 공유하는 메모리로 gc..
24장 자바랭 다음으로 많이 쓰는 애들은 컬랙션 - Part3(Map) Map 형태의 자료 구조는 무엇과 무엇으로 구성되어 있는가? key, value Map 에서 데이터를 저장하는 메소드는? put() Map 에서 특정 키에 할당된 값을 가져오는 메소드는? get() Map 에서 특정 키와 관련된 키와 데이터를 지우는 메소드는? remove() Map 에서 키의 목록을 가져오는 메소드는? keySet() Map 에 저장되어 잇는 데이터의 크기를 가져오는 메소드는? size() HashMap과 HashTable 중에서 키나 값에 null을 저장할 수 있는 것은? HashMap HashMap과 HashTable 중에서 여러 쓰레드에서 동시에 접근해도 문제가 없는 것은? HashTable HashMap에서 ..
22장 자바랭 다음으로 많이 쓰는 애들은 컬랙션 - Part1(List) Collection 인터페이스를 구현하는 대표적인 3개의 자료구조는? List, Set, Queue 배열과 같이 순서가 있는 목록형을 나타내는 대표 인터페이스는? List ArrayList라는 클래스의 생성자 중 매개 변수가 없는 기본 생성자를 사용하면 기본적으로 몇개의 저장 공간을 가지는가? 10개 만약 ArrayList 클래스의 저장 공간 개수를 처음부터 지정하려면 어떤 생성자를 사용하면 되나요? 기본 생성자 ArrayList 객체를 생성할 때 제네릭을 사용하는 이유는? 크기를 지정하는 것은 메모리 낭비로 이어지므로 ArrayList에 데이터를 담는 메소드 이름 두가지는? add(), addAll() Collection 인터페이..
21장 실수를 방지하기 위한 제네릭이라는 것도 있어요 제네릭이 자바에 추가된 이유는? 타입 형변환에서 발생할 수 있는 문제를 방지하기 위해서 제네릭 타입의 이름은 T나 E처럼 하나의 캐릭터로 선언해야 하는가? x 메소드에서 제네릭 타입을 명시적으로 지정하기 애매할 경우에는 안에 어떤 기호를 넣어 주어야 하는가? ? 메소드에서 제네릭 타입을 명시적으로 지정하기에는 애매하지만 어떤 클래스의 상속을 받은 특정 타입만 가능하다는 것을 나타내려면 안에 어떤 기호를 넣어야 하는가? ? extends 타입 제네릭 선언시 wildcard라는 것을 선언했을 때 어떤 제약사항이 있는지? 매개변수에 사용해서 값을 얻을 때는 상관없지만, wildcard로 객체를 생성하고, 특정 타입을 세팅할 수는 없다 메소드를 제네릭하게 선..
Goal gc에 대해 알아본다 gc프로세스에 대해 알아본다 gc의 종류에 대해 알아본다 Garbage Collector 가비지 컬렉터(GC)는 힙 메모리를 살펴보고, 사용 중인 객체를 식별하고 사용하지 않는 객체를 삭제하는 프로세스이다. 즉, 애플리케이션의 동적 메모리 할당 요청을 자동으로 관리한다. Java에서는 Java Virtual Machine (JVM)에서 자체적으로 Garbage collector를 제공하고 있으며, 다양한 Garbage collector가 존재하여 프로그램의 크기, 특성, 요구사항 등에 맞는 적절한 Garbage collector를 선택하여 사용할 수 있다. 실행 과정 1 단계 : 마킹 사용 중인 메모리와 그렇지 않은 메모리를 식별한다. 참조된 개체는 파란색으로 표시되고, 참..
Goal Thread safe이란 무엇인지 알아본다 Thread safe vs Thread unsafe Thread safe한 코드 설계하는 방법을 알아본다 Thread safe 여러 개의 스레드에서 동시에 해당 코드를 실행하더라도 문제가 발생하지 않고, 안전하게 사용될 수 있는 코드를 말한다. "스레드"는 하나의 프로세스 내에서 병렬로 실행될 수 있는 실행 단위를 말한다. 다중 스레드 환경에서는, 각 스레드가 동시에 코드를 실행할 수 있어, 이로 인해 발생할 수 있는 문제들(예: 경쟁 조건, 교착 상태, 데드락 등)을 방지하기 위해 스레드 안전성이 중요하다. Thread safe vs Thread unsafe 한 코드의 특징 Tread safe Tread unsafe 두 개 이상의 스레드에서 동시에 해..
19장 이쯤에서 자바의 역사와 jvm에 대해서 알아보자 JDK Java Development Kit J2SE Java 2 Standard Edition Java SE Java Standard Edition JRE Java Runtime Environment 실행만을 위한 환경으로 이 JRE만 설치하면, 자바를 컴파일하는 등의 각종 프로그램이 제외된 상태로 설치된다 OpenJDK 소스에 라이센스 문제가 되는 부분을 제거한 완전 오픈소스 버전의 JDK 자바의 특징 단순하고 객체지향적이며 친숙 다형성, 캡술화 등 객체지향적으로 디자인됨 견고하며 보안상 안전 컴파일 할 때와 실행할 때 문법적 오류에 대한 체크 메모리 관리 모델이 매우 단순 분산환경에서 디자인되어 보안성이 높다 아키텍처에 중립적이어야 하며 포터블..
17장 어노테이션이라는 것도 알아야 한다 @Override 어노테이션의 용도는 무엇인가요? 부모클래스의 메소드를 재정의 @SupressWarning 어노테이션의 용도는 무엇인가요? 에러가 아님을 명시적으로 알려주는 용도 @Decrecated 어노테이션의 용도는 무엇인가요? 더 이상 존재하지 않음 사용불가 어노테이션을 선언할 때 사용하는 어노테이션은 무엇인가요? 메타어노테이션 4번의 답에 있는 어노테이션들을 사용할 때 import 하는 패키지는 무엇인가요? java.lang.annotation @Target 어노테이션의 용도는 무엇인가요? 어노테이션을 어떤 것에 선언할 때 사용 @Retention 어노테이션의 용도는 무엇인가요? 얼마나 오래 어노테이션 정보가 유지되는지 @Inherited 어노테이션의 용도..
Goal ArrayList에 대해서 알아본다 Array vs ArrayList 자바 버전 별 차이점에 대해서 알아본다 ArrayList 란? Java 프로그래밍 언어에서 제공하는 컬렉션 클래스 중 하나로, 동적 크기 배열(dynamic size array)을 구현한 클래스다. 내부적으로 배열을 사용하여 요소를 저장하며, 요소의 추가, 삭제, 검색 등의 작업을 수행할 수 있다. ArrayList는 크기를 지정하지 않고 요소를 추가할 수 있으며, 내부적으로 필요에 따라 크기가 동적으로 조정된다. Arr ay vs ArrayList 구분 Array ArrayList 크기 고정. 생성 이후 크기 변경 불가 가변 메모리 할당 생성시 할당 성장함에 따라 메모리 할당 (생성 비용 저렴) 데이터 저장 같은 타입의 데이..
· Tool/sts
목표 전자정부프레임워크에서 구현한 소스를 STS 적용 기존 환경 전자정부프레임워크 3.10.10 openjdk 1.8 STS 4 기본적으로 JDK가 아닌 JRE를 이용해 실행하므로 라이브러리등의 사용에 영향을 줄 수 있음 JRE (Java Runtime Environment) 컴파일된 자바 프로그램을 실행시킬 수 있는 자바 환경 JRE는 JVM이 자바 프로그램을 동작시킬 때 필요한 라이브러리 파일들과 기타 파일들을 가지고 있다 자바 프로그램을 실행시키기 위해선 JRE를 반드시 설치 하지만 자바 프로그래밍 도구는 포함되어있지 않기 때문에 자바 프로그래밍을 하기 위해선 JDK가 필요 JDK (Java Development Kit) 자바 프로그래밍시 필요한 컴파일러 등 포함 개발을 위해 필요한도구(javac,..
dev_rosieposie
'Java' 태그의 글 목록 (4 Page)