목록Java (22)
Rootable의 개발일기
❓ 람다식이란? 메서드를 하나의 식(expression)으로 표현한 것 메서드를 람다식으로 표현하면 메서드의 이름과 반환값이 없어지므로, 람다식을 '익명 함수(anonymous function)'라고도 한다. int method() { return (int) (Math.random() * 5) + 1);} 위의 메서드를 람다식으로 바꾸면 다음과 같다. int[] arr = new int[5];Arrays.setAll(arr, (i) -> (int) (Math.random() * 5) + 1); 🎯 람다식의 장점 ✔ 간결한 코드 모든 메서드는 클래스에 포함되어야 하므로 클래스를 새로 만들어야 하고, 객체도 생성해야만 비로소 메서드를 호출할 수 있다. 그러나 람다식은 이러한 과정 없이 오직 람다식 자..
❓ static 이란? 모든 인스턴스에서 공유되는 static 변수 자바에서 static 키워드는 클래스 레벨의 변수나 메서드, 블록을 정의할 때 사용된다. 이는 인스턴스 생성 없이도 접근 가능하며, 모든 인스턴스에서 공유된다. static 변수는 클래스가 로드될 때 Method 영역에 할당되기 때문에 프로그램 시작부터 종료까지 메모리에 유지된다. 이러한 특성으로 인해 모든 인스턴스가 공유하여 사용할 수 있는 변수가 필요할 때 유용하다. 🔎 static 변수 static 변수는 클래스 레벨에서 선언되며, 모든 인스턴스에 의해 공유된다. 그래서 특정 데이터를 모든 인스턴스가 공유해야 할 때 유용하다. 다음은 static 변수 사용 예시다. public class Calculator { public ..
📌 상속(Inheritance)이란? 기존의 클래스를 재사용하여 새로운 클래스를 작성하는 자바의 문법 요소를 말한다. 상속을 통해 우리는 객체지향 프로그래밍에서 다형성을 구현할 수 있으며, 다형성을 통해 재사용성 및 확장성을 높이고 중복된 코드를 제거하는 이점을 얻을 수 있다. 이처럼 상속은 좀 더 구체적인 클래스를 구현하기 위해 사용되는 기법이며, 그로 인해 부모 클래스의 코드를 자식 클래스가 재사용할 수 있다. 하지만 상속에 대해서 다음과 같은 견해가 있었다. "내가 자바를 만들면서 가장 후회하는 일은 상속을 만든 점이다." - James Arthur Gosling의 인터뷰"상속을 위한 설계와 문서를 갖추거나 그럴 수 없다면 상속을 금지하라" - Effective Java by 조슈아 블로크"An ..
📌 Map Key와 Value를 하나의 쌍으로 묶어서 저장하는 컬렉션 클래스 값은 중복해서 저장할 수 있지만, 키는 중복되어서는 안 된다.만약 기존에 저장된 데이터와 중복된 키와 값을 저장하면 기존의 값은 없어지고 최근에 저장된 값이 남게 된다.저장 순서가 유지되지 않는다. ✅ Methods MethodDescriptionvoid clear()Map의 모든 객체를 삭제boolean containsKey(Object key)지정된 key 객체와 일치하는 Map의 key 객체가 있는지 확인boolean containsValue(Object value)지정된 value 객체와 일치하는 Map의 value 객체가 있는지 확인Set entrySet()Map에 저장되어 있는 key-value 쌍을 Map.Entr..