[CS면접 및 자바 면접 준비] 컬렉션 프레임워크
·
면접 준비
컬렉션 프레임워크 컬렉션 프레임워크란? ➕ 다수의 데이터를 쉽고 효과적으로 관리할 수 있는 표준화된 방법을 제공하는 클래스의 집합을 의미합니다. 자바 컬렉션에는 List, Set, Map 인터페이스를 기준으로 여러 구현체가 존재하고, 이에 더해 Stack, Queue 인터페이스도 존재합니다. Java에서 Collection 이란 데이터의 집합, 그룹을 의미 JCF(Java Collection Framework)는 객체들을 한 곳에 모아 관리하고, 편하게 사용하기 위해 제공되는 환경 데이터, 자료구조인 컬렉션과 이를 구현하는 클래스를 정의하는 인터페이스를 제공한다. List, Map, Set, Stack, Queue 등이 있다. 다수의 데이터를 다루는데 자료구조를 직접 구현하지 않고 편하게 사용할 수 있다..
[Design Pattern] - Adapter 패턴
·
JAVA-기초/Design Pattern
아래 글은 제가 노션에서 작성한 글을 가져온것입니다. 아래 게시물을 참고하여 게시물을 작성할 경우 댓글 부탁드려요. Adapter 📌이미 제공된 코드를 그대로 사용할 수 없을 때, 필요한 형태로 변환후 이용하는 것 📌 이미 제공된 것과 필요한 것 사이의 차이를 메우는 디자인 📌Wrapper 패턴이라고 불리기도 한다. 📌두 종류가 잇다. 클래스에 의한 Adpater패턴(상속을 사용한 패턴 📌인스턴스에 의한 Adapter패턴(위임을 사용한 패턴) ⏬만들어 볼 클래스 📌Hello라는 주어진 문자열을 다음과 같이 표시하는 프로그램 (Hello), >>>Hello
[Java] 객체지향개념(OOP) 캡슐화와 정보은닉
·
JAVA-기초/JAVA기본
🟰Index 캡슐화 String 클래스의 캡슐화 정보 은닉(OOP의 핵심) 객체의 타입 은닉(업 캐스팅) 더욱 객체를 은닉(디자인 패턴) 객체의 필드 , 메서드 은닉(캡슐화) 구현 은닉(인터페이스) 캡슐화(Encapsulation) 내부를 가리는 캡슐화, 정보 은닉 개념중 하나 객체의 속성과 행위를 하나로 묶고, 외부로부터 내부를 감싸 숨겨 은닉한다. 외부의 잘못된 접근으로 값이 변하는 의도치 않는 동작을 방지하는 보효 효과도 가능하다. 대표적으로 **protected, default, private**의 접근제어자를 통해 구현 가능 유효하지 않은 숫자로 직접 변수를 변경하려는 시도를 내부에서 유효성 체크 로직을 통해 거를 수 있다. [ ] String클래스의 캡슐화String클래스는 final로 선언되..
[Java] Design Pattern - Iterator ,For 반복문의 차이
·
JAVA-기초/Design Pattern
🟰Iterator 패턴? 📌어떠한 객체의 집합, 값의 집합을 하나씩 지정해서 순서대로 처리하는 패턴 📌반복하는 의미를 갖고 있다. ⏬이해를 돕기 위한 예시 코드 ✅Book 객체(책장에 넣을 객체) package bookshelf; public class Book { private String name; public Book(String name) { this.name = name; } public String getName() { return name; } } ✅ Iterator 역할을 구현할 인터페이스 package bookshelf; import java.util.Iterator; /*** * Iterator 역할을 만들어내는 인터페이스 */ public interface Aggregate { pub..
[국비지원과정20] 자바 - 클래스 메서드와 인스턴스 메서드가 헷갈린다면?
·
회고록
개념을 알기 전에 이것부터 머리속에 먼저 주입하자! 이것만 기억하고 공부해도 2배 이상 쉽게 이해할 수 있다. ⭐⭐⭐클래스 메서드는 인스턴스 메서드보다 먼저 생성된다. 그래서 인스턴스 메서드가 생성되고 호출되는 시점에는 클래스메서드는 언제든지 호출 가능하고 클래스변수도 사용할 수 있다. 반대로 클래스 메서드가 생성된 시점에서는 인스턴스 메서드가 아직 생성되지 않은 시점이기 떄문에 있지도 않은 메서드를 클래스 메서드안에서 호출하려고 하면 예외가 생길 수 밖에 없다. 🟰클래스 메서드 🟰인스턴스 메서드 ☀️메서드의 작업을 수행하는데 인스턴스 변수를 필요로 하는 메서드 🟰클래스 메서드 ☀️인스턴스 변수나 인스턴스 메서드를 사용하지 않는 메서드 🟰메서드 생성 규칙 ☀️ 클래스를 설계할 때, 멤버변수 중 모든 인스..
[국비지원과정19] JVM 구조
·
회고록
그동안 너무 바빠서 한동안 못 올렸던 국비지원과정 교육 내용을 다시 기록하려고 한다... 나태한 내 자신 스스로 채찍질 해야해..ㅠㅠ 우선 JVM의 구조를 간단히 보자. 그림은 좀 깔끔하지 못하지만 최선을 다했다. 🟰메서드 영역(Method area) ☀️ 프로그램 실행 중에 어떤 클래스가 호출되면, JVM은 해당 클래스의 컴파일 된 클래스파일(.class)을 읽어서 분석하여 해당 클래스에 대한 정보를 이곳에 저장한다. 이 때 해당 클래스의 클래스변수도 이 영역에 함께 생성된다. ☀️만약 클래스 메서드와 인스턴스 메서드가 있다면 먼저 호출되는 것은 클래스 메서드이다. ☀️왜냐하면 인스턴스 메서드보다 메서드 영역의 클래스 메서드가 먼저 호출되기 떄문이다. 🟰힙(Heap) ☀️인스턴스가 생성되는 공간. 프로..