🧱 포함 관계(Composition)
·
Java
✍️ 시작하며이전 글에서는 객체지향 프로그래밍의 핵심 개념 중 하나인 상속(Inheritance) 을 통해기존 클래스를 확장하는 방법과 메서드 오버라이딩에 대해 알아보았습니다.이번 글에서는 클래스 간의 관계 중 하나인 포함 관계(Composition) 를 학습해보겠습니다.포함 관계는 객체가 다른 객체를 "포함(has-a)" 하는 구조로,자동차가 엔진을 가지듯, 집이 여러 방을 가지듯 객체 간 구성 관계를 표현할 때 사용됩니다.💡 학습 목표포함 관계(Composition)의 개념과 의미를 이해한다."has-a" 관계와 "is-a" 관계를 비교할 수 있다.포함 관계를 실제 코드로 구현하는 방법을 익힌다.컴포지션의 생명주기 및 UML 표기법을 이해한다.🧠 개념 정리🔸 포함 관계(Composition)란?..
🧱 상속(Inheritance)이란?
·
Java
✍️ 시작하며이전 글에서는 같은 이름으로 다양한 매개변수를 처리하는 메서드 오버로딩(Overloading) 개념을 배웠습니다.이번 글에서는 객체지향 프로그래밍에서 가장 핵심적인 원칙 중 하나인 상속(Inheritance) 에 대해 알아보겠습니다.상속은 기존 클래스를 확장하여 재사용할 수 있도록 도와주는 기능으로, 실제 현업 코드에서도 매우 많이 활용됩니다.💡 학습 목표상속의 개념과 역할을 이해한다.extends 키워드를 사용한 클래스 확장을 학습한다.메서드 오버라이딩(Overriding)의 개념과 적용 방법을 익힌다.상속을 활용한 클래스 다이어그램 구조와 코드를 이해한다.🧠 개념 정리🔸 상속(Inheritance)이란?상속은 기존 클래스를 기반으로 새로운 클래스를 정의하는 방식입니다.상속을 사용하면..
🧱 클래스와 인스턴스 복습
·
Java
💬 시작하며지난 글에서는 클래스를 설계하고, 그 클래스를 이용해 여러 객체(인스턴스)를 생성하고각 객체에 다른 값을 할당하는 방법을 배웠습니다.이번 글에서는 그 흐름을 이어서✔️ **클래스와 인스턴스(객체)**의 관계를 좀 더 확실히 복습하고,✔️ 헷갈리기 쉬운 클래스와 인스턴스의 차이를 예제와 함께 이해해보겠습니다.💡 학습 목표클래스와 인스턴스(객체)의 개념을 다시 확인한다클래스는 설계도, 인스턴스는 실제 실체라는 점을 정확히 이해한다예제 코드를 통해 인스턴스화 과정을 다시 복습한다1️⃣ 클래스와 인스턴스란?용어의미클래스(Class)객체를 만들기 위한 설계도, 틀인스턴스(Instance)클래스를 이용해 생성된 실제 실체(객체)클래스 = 붕어빵 틀인스턴스 = 붕어빵2️⃣ 붕어빵 예제로 이해하기클래스는..
🧱 클래스와 객체란?
·
Java
💬 시작하며이전 글에서는 객체지향 프로그래밍(OOP)의 출발점인‘객체(Object)’의 개념과 객체가 가지는 속성과 행동, 그리고 추상화와 캡슐화 같은 핵심 원리에 대해 배웠습니다.이번 글에서는 이 ‘객체’를 만들어내기 위한 설계도인 클래스(Class)에 대해 배우고,직접 클래스를 설계하고 객체(인스턴스)를 생성해보는 실습을 진행할 거예요.💡 학습 목표클래스란 무엇인지 이해하고 작성해볼 수 있다클래스를 인스턴스화(객체로 만들기)하는 방법을 배운다객체 생성 시 메모리의 흐름과 참조 개념을 이해한다1️⃣ 클래스란? – 객체를 만들기 위한 설계도자바에서 클래스(Class)는 객체를 만들기 위한 템플릿(설계도) 입니다.클래스 안에는 객체의 상태를 표현하는 필드(변수)와행동을 나타내는 메서드(함수)가 정의됩니..
🧱OOP(객체지향 프로그래밍)란?
·
Java
반복문, 조건문까지 배웠다면 이제는 진짜 자바의 핵심을 만나볼 차례입니다.우리가 지금까지 작성한 자바 코드는 대부분 순차적인 흐름으로 동작했어요.하지만 실제로는 현실 세계처럼, 각각의 ‘객체’가 자신의 역할을 하면서 상호작용하는 구조가 훨씬 자연스럽죠.그래서 자바는 애초부터 객체지향(Object-Oriented Programming, OOP)을 중심으로 설계된 언어입니다.이번 글에서는 객체지향의 시작점인"도대체 객체(Object)란 뭘까?""왜 자바는 모든 걸 객체로 다루려 할까?"이런 질문에 답을 찾아보면서, 자바의 핵심 철학을 이해해보려 합니다.💡 학습 목표객체의 상태와 행동이 무엇인지 이해한다추상화의 개념과 중요성을 알아본다🧩 객체지향이란?**객체지향 프로그래밍(Object-Oriented Pr..