반응형 BackEnd/Java20 [Java] 컬렉션 프레임워크(Collection Framework) 개념 # 목적: 학습을 위한 컬렉션 프레임워크(Collection Framework) 관련 개념 정리Collection 이란?: 여러 객체(데이터)를 모아놓은 것프레임워크(Framework) 란?: 다른 사람과 협력하기 위해 표준화, 정형화된 체계적인 프로그래밍 방식> 생산성이 높아지고 유지보수가 용이함대표적인 java의 프레임워크 - Spring* 참고 Library : 다른 사람이 미리 만들어놓은 기능 제공 - ex1) 오디오 라이브러리 - 녹음, 재생, 정지 등의 기능 제공 - ex2) Java API에서 제공하는 SimpleDateFormat(날짜)컬렉션 프레임워크(Collection Framework) 란?: Collection(다수의 객체=data)을 다루기 위한 표준화된 프로그래밍 방식> 컬.. 2025. 1. 15. [Java] StringBuilder, StringBuffer 사용 목적 및 차이점 # 목적: String의 특징을 이해하고 StringBuilder, StringBuffer의 사용 목적과 차이점에 대해 알아보기String 이란?: StringBuilder와 StringBuffer를 이해하기 위해서는 먼저 String에 대해 알아야 한다.String은 문자열을 표현하는 불변객체로, 한 번 생성된 문자열은 절대로 변하지 않는다.즉, String 객체 최초 생성 후에는 추가나 변경이 발생할 경우 새로운 객체가 생성된다.쉬운 이해를 위해 예시를 들어 설명해보자.int no = 100;String name = "홍길동";String email = "hong@gamil.com";String tel = "010-1234-5678";String text1 = "번호:" + no + ", 이름:" +.. 2025. 1. 15. [Java] 추상화 - 추상 클래스(Abstract Class), 인터페이스(Interface) 정리 # 목적: 추상화 학습을 위한 추상클래스, 인터페이스의 개념 및 차이점 정리추상화란?: 구현클래스가 반드시 포함할 기능(구현할 기능)을 추상메소드로 정의하는 것* 추상화의 목적 - 사용방법이 동일한 구현클래스의 작성* 상속의 목적 - 자식클래스를 빠르게 구현하기 위함❓ 추상 클래스(abstract Class)란?: 미완성 메서드를 갖고 있는 미완성 설계도(클래스)다른 클래스 작성에 도움을 주기 위한 것으로, 인스턴스 생성 불가(미완성 설계도 -> 제품 생산 불가)상속을 통해 추상 메서드를 완성해야 인스턴스 생성 가능추상클래스 작성 기준: 여러 클래스에 공통적으로 사용될 수 있는 추상클래스를 바로 작성하거나기존 클래스의 공통 부분을 뽑아서 추상클래스를 만든다.추상클래스의 장점부모의 설계도를 상속받아 자손.. 2025. 1. 15. [Java] 다형성(Polymorphism) 정리 # 목적: 학습을 위한 다형성 개념 정리다형성(polymorphism)이란?: 여러 가지 형태를 가질 수 있는 능력,조상 타입 참조 변수로 자손 타입 객체를 다루는 것.다형성은 백마디 말보다 코드로 보는 게 더 이해하기 쉽다.작성한 예시의 주석을 참고하며 알아보자.1. 기본 예시class Tv { boolean power; // 전원상태(on/off) int channel; // 채널 void power() { power = !power; } void channelUp() { ++channel; } void channelDown() { --channel; }}class SmartTv extends Tv { String text; // 캡션(자막)을 보여주기 위한 문자열 void caption() {.. 2025. 1. 15. [Java] 접근 제어자(access modifier) (Feat. 캡슐화) # 목적: 접근 제어자(access modifier)의 종류와 접근 범위에 대한 간단 기록접근제어자(access modifier)의 종류: 하나의 대상에 아래 4개 중 1개 사용 가능private : 같은 클래스 내에서만 접근 가능(default) : 같은 패키지 내에서만 접근 가능protected : 같은 패키지 내에서, 그리고 다른 패키지의 자손클래스에서 접근 가능public : 접근 제한 전혀 없음접근 범위 표제어자같은 클래스같은 패키지자손 클래스전 체privateO (default)OO protectedOOO publicOOOO* class에 public을 붙일 때 - 소스파일의 이름과 클래스명이 같아야 함# 접근 제어자를 사용하는 이유 (feat. 캡슐화): 외부로부터 데이터를 보호하고, .. 2025. 1. 15. [Java] 오버로딩(Overloading), 생성자(Constructor) # 목적: 오버로딩과 생성자에 대한 기초 개념 정리1. 오버로딩(overloading)이란?: 한 클래스 안에 같은 이름의 메서드를 여러개 정의하는 것오버로딩 성립 조건메서드 이름이 같아야 함매개변수의 개수 또는 타입이 달라야 함반환 타입은 영향 없음오버로딩 예시class overload { int test(int a, int b) { } int test(int x, int y) { } // 에러 - 조건 2번 불일치 int test(long a, int b) { } // 가능 - 매개변수 타입이 다르기 때문에 long test(int[] a) { } // 가능 - 매개변수 개수가 다르기 때문에(조건 3번으로 인해 long도 가능)}2. 생성자(constructor)란?: 인스턴스가 생성.. 2025. 1. 15. 이전 1 2 3 4 다음