본문 바로가기

전체 글81

[JAVA] 제네릭이란? (정의, 타입 파라미터, 사용하기) 제네릭(Generics)데이터의 타입(data type)을 일반화한다(generalize)개념클래스나 메서드에서 사용할 내부 데이터의 타입을 미리 정하는 것내부 데이터 타입을 컴파일 시에 미리 지정하여,잘못된 타입이 사용될 수 있는 문제를 컴파일 과정에서 제거가 가능해짐 장점컴파일 시에 미리 타입 검사(type check)를 수행하기 때문에, 실행 중에 일어나는 에러 방지제네릭 사용 시에, 불필요한 타입 변환을 하지 않아도 됨 컬랙션(Collection) 클래스에서 불필요한 타입 변환 발생- 기존의 컬렉션 클래스에는 모든 타입의 객체(Object형태로 저장)를 저장할 수 있음- 따라서, 다른 타입의 객체들이 저장될 수 있음- 반대로 컬렉션에 저장된 객체를 읽어올 때에 타입 변환이 필요함- 즉, 원래의 클.. 2024. 4. 25.
[JAVA] Set 인터페이스(HashSet, LinkedHashSet, TreeSet) [ 컬렉션 프레임워크의 종류 ]Collcetion 인터페이스Map 인터페이스[ collection 인터페이스 ]특징List, Set,Queue에서 상속하는 최상위 컬렉션 타입업캐스팅으로 다양한 종류의 컬렉션 자료형을 받아서 자료를 삽입, 삭제, 조회할 수 있음 종류ListQueueSet     Set 인터페이스특징- 객체의 중복을 허용하지 않음- 순위(index)가 지정되지 않음- 집합적인 특징을 가지고 있음종류1. HashSet 클래스 2. LinkedHashSet 클래스3. TreeSet 클래스  HashSet 클래스특징객체의 중복 저장을 허용하지 않음중복 저장이 불가능하므로, null값도 1개만 저장됨순서(index)가 지정되지 않음따라서, 요소를 가지고 오는 get(index) 메서드 없음출력 시.. 2024. 4. 25.
[JAVA] List 인터페이스(ArrayList, Vecror, LinkedList, Stack) [ 컬렉션 프레임워크의 종류 ]collection 인터페이스map 인터페이스[ collection 인터페이스 ]특징List, Set,Queue에서 상속하는 최상위 컬렉션 타입업캐스팅으로 다양한 종류의 컬렉션 자료형을 받아서 자료를 삽입, 삭제, 조회할 수 있음 종류ListQueueSet   List 인터페이스 특징배열(array)와 비슷하게 동작저장 순서가 유지되는 컬렉션을 구현하는 데에 사용데이터의 중복 저장을 허용저장 순서가 유지되므로, 배열처럼 index로 요소에 접근저장 공간이 고정되어 있지 않고 가변적임데이터를 추가하면, 자동으로 저장 공간(크기)이 늘어남요소들 사이에 빈 공간을 허용하지 않음따라서, 삽입과 삭제를 할 때마다 배열의 이동이 일어남하위의 ArrayList, LinkedList, V.. 2024. 4. 25.
[JAVA] 컬렉션 프레임워크와 종류 컬렉션 프레임워크(collection framework)개념 다수의 데이터를 쉽고 효과적으로 처리할 수 있는 표준화된 방법을 제공하는 클래스의 집합 즉, 데이터를 저장하는 자료 구조와 데이터를 처리하는 알고리즘을 구조화하여 클래스로 구현해 놓은 것 컬렉션 프레임워크를 사용하는 이유?배열의 단점을 보완하고, 객체나 데이터들을 효과적으로 관리하려고 사용배열을 생성할 때 크기가 정해지고, 그 크기를 넘어가면 데이터를 저장할 수 없고, 데이터가 비어있으면 메모리가 낭비됨하지만 컬렉션은 생성할 때 용량을 정할 필요가 없고, 데이터가 추가 및 삭제될 때 자동으로 크기가 조정 특징컬렉션 프레임워크 내에, 모든 클래스 타입(참조 타입)의 객체를 저장하여 사용할 수 있음따라서 다양한 타입의 객체를 저장기본형은 wrapp.. 2024. 4. 25.
[JAVA] 예외처리: 사용자 정의 예외 클래스 사용자 정의 예외 클래스정의사용자가 프로그램에서 특정한 상황이 발생한 경우를 예외로 인식하기 위해 만든 클래스자바에서 제공하지 않는 예외는 사용자가 직접 예외를 만들어서 사용예를 들어, 체크카드로 결제 시에 체크 카드의 잔고가 남아 있지 않는 경우, 예외를 발생시킴일반 예외의 경우 Exception 클래스를 상속받고실행 예외인 경우는 RuntimeException 클래스를 상속 받아서 만듦 특징사용자 정의 예외는 특정한 예외를 처리하기 위한 용도이므로예외가 발생하는 경우에사용자 정의 예외 클래스의 생성자로 예외에 대한 메시지를 전달한 후에try/catch문에서 처리하는 게 일반적사용자 정의 예외클래스는 반드시 Exception 클래스를 상속 받아야 함 형식.. 2024. 4. 24.
[JAVA] throws를 이용하여 예외 처리 자바 메서드 호출 과정자바 실행 시 main() 메서드 호출을 시작으로, 메서드가 호출되고 종료되는 과정자바 프로그램을 실행하면, main() 메서드가 처음 실행됨<ul style=.. 2024. 4. 24.