| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 문자열
- js
- ArrayList
- 자바
- Eclipse
- input
- java테스트
- CSS
- 배열
- 자바문법
- 스프링부트
- Visual Studio Code
- javascript
- IntelliJ
- Java
- 테스트자동화
- string
- list
- vscode
- junit
- 단위테스트
- math
- 인텔리제이
- Array
- 자바스크립트
- html
- junit5
- SpringBoot
- HashMap
- 정규식
- Today
- Total
목록상속 (7)
어제 오늘 내일
Java에서 객체지향 설계를 할 때 중요한 선택 중 하나는“상속(Inheritance)을 사용할 것인가, 합성(Composition)을 사용할 것인가?” 입니다.두 개념은 모두 객체 간 관계를 표현하지만, 구조적 차이와 설계 철학에서 큰 차이를 보입니다.이 글에서는 합성과 상속의 개념, 특징, 차이점, 언제 사용해야 하는지 명확하게 정리합니다. 1. 상속(Inheritance)상속은 부모 클래스의 기능을 자식 클래스가 물려받는 관계입니다.is-a 관계라고도 부릅니다.예:class Animal { void eat() { System.out.println("먹습니다"); }}class Dog extends Animal { void bark() { System.out...
Java를 비롯한 객체지향 프로그래밍(OOP)에서는 4대 핵심 원칙이 존재합니다.바로 상속(Inheritance), 추상화(Abstraction), 캡슐화(Encapsulation), 다형성(Polymorphism)입니다.이 네 가지가 객체지향의 구조와 설계를 이루는 기본 뼈대이며, 서로 유기적으로 연결되어 동작합니다. 1. 상속(Inheritance)상속은 기존 클래스(부모)의 속성과 기능을 새로운 클래스(자식)가 물려받는 것입니다.특징부모 클래스의 필드와 메서드 재사용코드 중복 감소자식 클래스에서 기능 확장 가능예제class Animal { void eat() { System.out.println("먹습니다"); }}class Dog extends Animal { void..
Java에서 클래스 간의 형변환은 상속 관계가 있을 때만 가능합니다.상속 관계에서는 부모 타입과 자식 타입 사이에서 자유롭게 변환이 가능하며, 이를 업캐스팅(Upcasting)과 다운캐스팅(Downcasting)이라고 부릅니다.이 글에서는 두 개념의 차이와 사용법을 예제 중심으로 정리합니다. 1. 업캐스팅(Upcasting)자식 타입 → 부모 타입으로 변환하는 것업캐스팅은 가장 기본적인 형변환이며 자동 형변환됩니다.class Parent { void hello() { System.out.println("Parent hello"); }}class Child extends Parent { void bye() { System.out.println("Child bye")..
Java에서 자식 클래스 호출이라는 표현은 보통 다음 두 가지 상황을 의미합니다:자식 클래스 객체를 생성하여 사용하는 것부모 타입으로 자식 객체를 다루는 것(다형성)이 글에서는 자식 클래스를 어떻게 호출하고 사용하는지 예제 중심으로 정리합니다. 1. 자식 클래스 객체 생성(일반 호출)자식 클래스는 부모 클래스를 상속받아 만들어집니다.따라서 자식 객체를 만들면 부모의 기능도 함께 사용할 수 있습니다.예:class Parent { void hello() { System.out.println("부모 hello"); }}class Child extends Parent { void bye() { System.out.println("자식 bye"); }}public c..
Java에서 자식클래스는 객체가 생성될 때 반드시 부모클래스의 생성자를 먼저 호출합니다.이를 위해 사용하는 문법이 바로 super()입니다. 부모 생성자 호출은 상속 관계에서 객체가 올바르게 초기화되도록 만드는 중요한 과정입니다. 1. 부모 생성자 호출의 기본 개념자식클래스의 생성자가 실행되기 전에부모클래스의 생성자가 먼저 호출되어야 한다는 것이 Java의 규칙입니다.자식 생성자 안에서 명시적으로 부모 생성자를 호출하지 않더라도, Java는 자동으로 super()를 첫 줄에 삽입합니다.예:class Parent { Parent() { System.out.println("Parent 생성자"); }}class Child extends Parent { Child() { ..
Java의 객체지향 프로그래밍(OOP) 핵심 개념 중 두 가지가 상속(Inheritance)과 오버라이딩(Overriding)입니다. 두 개념은 서로 밀접하게 연결되어 있으며, 클래스 설계와 확장성을 높이는 데 중요한 역할을 합니다. 이 글에서는 두 개념을 명확하게 구분하고 이해할 수 있도록 정리합니다. 1. 상속(Inheritance)이란?상속은 부모클래스의 속성과 메서드를 자식클래스가 물려받는 것입니다.이때 extends 키워드를 사용합니다.예제class Animal { void sound() { System.out.println("동물이 소리를 냅니다"); }}class Dog extends Animal {}설명Dog는 Animal을 상속sound() 메서드를 그대로 사용 가..
Java에서 상속(Inheritance)은 객체지향 프로그래밍의 중요한 개념으로, 기존 클래스(부모클래스)의 기능을 그대로 물려받아 새로운 클래스(자식클래스)를 만드는 방식입니다. 상속을 사용하면 코드 재사용성이 높아지고, 구조적인 프로그램 설계가 가능해집니다. 1. 상속이란?상속은 하나의 클래스가 다른 클래스의 변수(필드)와 메서드를 물려받는 것을 의미합니다.Java에서 상속을 사용할 때는 extends 키워드를 사용합니다.class 자식클래스 extends 부모클래스 { } 2. 부모클래스(상위 클래스, Super Class)부모클래스는 자식클래스가 물려받을 공통 속성과 기능을 정의하는 클래스입니다.예:public class Animal { String name; public void ea..