다형성(Polymorphism)의 개념과 원리다형성은 객체지향 프로그래밍의 핵심 개념 중 하나로, 동일한 메서드 호출이 객체의 실제 타입에 따라 다르게 동작할 수 있도록 합니다. 이를 통해 다양한 객체를 일관된 방식으로 처리할 수 있으며, 코드의 유연성과 확장성을 극대화할 수 있습니다.다형성의 구현 방식컴파일 타임 다형성 : 메서드 오버로딩을 통해 구현됩니다. 메서드 이름은 동일하지만 서로 다른 매개변수를 받는 여러 메서드를 정의하며, 호출 시점에 적합한 메서드가 선택됩니다.public class MathUtil { public int add(int a, int b) { return a + b; } public double add(double a, double b) { ..
상속이란?상속(Inheritance)은 객체지향 프로그래밍에서 핵심 개념 중 하나로, 하나의 클래스가 다른 클래스의 속성과 메서드를 물려받아 재사용할 수 있는 기능입니다. 이를 통해 코드의 중복을 줄이고 유지보수를 쉽게 할 수 있으며, 다형성을 구현할 수 있는 기초가 됩니다.상속의 개념과 장점상속은 기존의 클래스(부모 클래스 또는 슈퍼 클래스)의 속성 및 메서드를 새로운 클래스(자식 클래스 또는 서브 클래스)가 상속받아 사용하는 것입니다. 자식 클래스는 부모 클래스의 모든 멤버(필드와 메서드)를 물려받으며, 이를 활용해 새로운 기능을 추가하거나 기존 기능을 수정(오버라이딩)할 수 있습니다.// 부모 클래스public class Animal { String name; void eat() { ..
Java의 List 인터페이스List 인터페이스란?Java에서 List 인터페이스는 순서가 있는 데이터를 다루기 위한 자료구조를 정의하는 핵심 인터페이스입니다.List 인터페이스는 Collection 인터페이스를 확장하며, 데이터 삽입 순서를 유지하고 중복된 요소를 허용하는 선형 자료구조입니다.List 인터페이스는 배열과 유사하게 인덱스를 사용하여 요소에 접근할 수 있으며, 크기가 동적으로 조정됩니다.그리고 자료구조 Set과 달리 List는 중복된 요소를 허용하며, 요소의 순서가 중요한 경우에 사용됩니다.주요 특징순서 유지 : 요소가 삽입된 순서를 그대로 유지합니다. 데이터를 순차적으로 관리할 수 있습니다.중복 허용 : 동일한 값을 가진 요소를 여러 번 포함될 수 있습니다.인덱스 접근 : 배열처럼 인덱..