JAVA
-
[Java] subList 사용시 주의점 - ConcurrentModificationException 발생 이슈JAVA 2024. 2. 27. 14:21
LeetCode를 풀다가 ConcurrentModificationException가 발생했다. 원인을 찾다가 subList를 잘못 사용하고 있다는 것을 깨달아서 정리해본 오늘의 이슈. subList(int fromIndex, int toIndex) subList 메서드는 리스트 컬렉션의 메서드로, 일정 범위(fromIndex부터 toIndex - 1까지의 요소)까지 리스트 요소로 구성된 리스트를 반환한다. 간단하게 원하는 범위만큼 리스트를 반환한다고 생각하면 된다. 그렇다면 ArrayList 클래스의 subList를 구현부를 한번 살펴보자. public List subList(int fromIndex, int toIndex) { subListRangeCheck(fromIndex, toIndex, size..
-
[JAVA] 객체 지향 프로그래밍(OOP)의 정의 및 특징JAVA 2020. 11. 10. 15:26
객체 지향 프로그래밍(Object Oriented Programming, OOP)이란? 속성(Attribute)와 행위(behave)를 가진 객체를 조합하여 프로그램을 구성하는 방법. 프로그램은 객체와 객체간의 상호작용을 통해 동작한다. 객체 지향 프로그래밍의 특징 : 캡슐화, 상속, 다형성 Encapsulation (캡슐화) 하나의 클래스 안에 연관된 데이터와 기능을 담아 정의한다. 중요한 데이터나 복잡한 기능은 숨기고, 외부에서 필요한 기능만을 공개한다. 외부에서는 공개된 속성과 메소드만 접근 가능하다. Abstarcation(추상화) 현상의 존재하는 객체의 주요특징 추출한다. 캡슐화에 속하는 개념으로 볼 수 있다. Inheritance (상속) 객체 정의 시 기존에 존재하는 객체의 속성과 기능을 상..