java4 Java | 제네릭 제네릭이란 결정되지 않은 타입을 파라미터로 처리하고 실제 사용할 때 파라미터를 구체적인 타입으로 대체시키는 기능 public class Box { public ? content ; } Box클래스에서 결정되지 않은 content의 타입을 T라는 타입 파라미터로 정의 는 T가 파라미터임을 뜻하는 기로호 타입이 필요한 자리에 T를 사용할 수 있음을 알려주는 역할을 한다. Box클래스는 T를 content 필드의 사용으로 사용하였고 T가 무엇인지 모르겠지만 Box객체가 생성될 시점에 다른타입으로 대체된다는 것을 알고 있다. public class Box { public content ; } Box의 내용물을 String으로 저장하고 싶다면 Box를 생설할 때 타입 파라미터 T 대신 String으로 대체하면 된.. 2023. 2. 6. Java | 람다식 람다식이란? → 데이터 처리부에 제공되는 함수 역할을 하는 매개변수를 가진 중괄호 블록이다. → 자바는 함수형 프로그래밍을 위해 Java 8부터 람다식을 지원한다. * 함수형 프로그래밍이란 함수를 정의하고 이 함수를 데이터 처리부로 보내 데이터를 처리하는 기법으로 데이터 처리부는 데이터만 가지고 있을 뿐, 처리방법이 정해져 있지 않아 외부에서 제공된 함수에 의존한다. 함수A(입력) { 처리내용 A } → 데이터 처리부는 람다식을 받아 매개변수에 데이터를 대입하고 중괄호를 실행시켜 처리한다. 람다식: (매개변수, ... ) -> {처리내용} 1. 자바는 람다식을 익명 구현 객체(이름이 없는 인터페이스 구현 객체)로 변환한다. 2.인터페이스의 익명 구현 객체를 람다식으로 표현하려면 인터페이스가 단 하나의 추.. 2023. 2. 2. Java | 컬렉션 프레임워크 자바 컬렉션 프레임워크란? 자료구조를 바탕으로 객체들을 효율적으로 추가, 삭제, 검색할 수 있도록 관련된 인터페이스와 클래스를 java.util 패키지에 포함시켜놓았다. 이들을 총칭해서 컬렉션 프레임워크라고 부른다. 컬렉션 프레임워크는 몇 가지 인터페이스를 통해서 다양항 컬렉션 클래스를 이용할 수 있도록 설계되어 있다. → 주요 인터페이스로는 List, Set, Map이 있다. → List와 Set은 객체를 추가, 삭제, 검색하는 방법에 있어서 공통점이 있기 때문에 공통된 메소드만 따로 모아 Collection 인터페이스로 정의해두고 이것을 상속하고 있다. →Map은 키와 값을 하나의 쌍으로 묶어서 관리하는 구조로 되어 있어 사용방법이 다르다. 인터페이스 분류 Collection : List: 순서를 유.. 2023. 2. 2. [java] 중첩 클래스 중첩클래스란? 클래스 내부에 선언한 클래스 클래스 멤버를 쉽게 사용 가능, 외부에는 중첩 관계 클래스를 감춰 코드의 복잡성을 줄일 수 있다는 장점이 있음 중첩클래스의 종류 2가지 1. 멤버클래스: 클래스 멤버로서 선언 2. 로컬클래스: 메소드 내부에서 선언 중첩클래스도 하나의 클래스이기 때문에 컴파일하면 바이트코드 파일(.class)이 별도로 생성된다. 1. 멤버클래스 1) 인스턴스 멤버 클래스: A객체를 생성해야 B객체 생성가능 class A { class B { } } // 바이트코드 파일 이름 // A는 바깥 클래스, B는 멤버클래스 A $ B .class 2) 정적 멤버 클래스: A객체를 생성하지 않아도 B객체 생성 가능 Class A { Static class B {} } 2. 로컬클래스 met.. 2023. 2. 1. 이전 1 다음