
상속은 객체 지향 프로글매이에서 중요한 개념 중 하나이다.상속은 기존의 클래스를 확장하여 새로운 클래스를 정의하는 매커니즘을 말한다.상속을 통해 기존의 클래스의 속성과 메서드를 재사용하고 확장하여 새로운 클래스를 만들 수 있다.위의 기능을 위해 상속에서는 두 개의 클래

연관관계는 두 클래스가 독립적으로 존재하면서, 필요에 따라 서로를 참조하거나 협력하는 관계를 의미한다.이는 객체 지향 프로그래밍에서 클래스 간의 느슨한 결합(Loose Coupling)을 형석하며, 두 객체의 생명주기는 서로에게 종속되지 않는다.비유 : 연관 관계는 친

다형성은 하나의 데이터 타입이 다양한 형태로 바라볼 수 있는 것다형성은 객체 지향 프로그래밍에서 중요한 개념 중 하나이다.이는 한 요소(예 : 메서드, 클래스)가 여러 형태를 가질 수 있는 능력을 의미한다.다형성은 코드의 유연성과 재사용성을 높여주며, 상속, 추상 클래

추상 클래스는 하나 이상의 추상 메서드를 포함하고 있는 클래스이다.추상 메서드는 구현이 없는(메서드 몸체가 없는) 메서드이며, 추상 클래스 내에서는 이러한 추상 메서드의 정의만을 포함하고 있다.추상 클래스는 직접적으로 객체를 생성할 수 없으며, 다른 클래스에서 상속받아

인터페이스(Interface) 인터페이스란 객체의 동작을 정의하는 추상 타입으로, 클래스가 구현해야 할 메서드의 설계도를 제공한다. 인터페이스는 구현 세부사항을 포함하지 않고, 메서드의 시그니처(이름, 매개변수, 반환타입)만 정의하며, 이를 구현하는 클래스가 실제 동작

클래스 안에 또 클래스를 선언할 수 있다. 처음 보면 "굳이?"라는 생각이 드는데, 특정 클래스에서만 사용하는 클래스를 밖으로 꺼내지 않고 안에 숨겨두는 것이다. 논리적으로 연관된 것들을 한 곳에 묶어두는 방식이라고 보면 된다.자바의 중첩 클래스는 static 여부와

자바를 배우다 보면 모든 클래스가 자동으로 무언가를 "상속받고 있다"는 말을 듣게 된다. 그 무언가가 바로 Object 클래스다. 이번 글에서는 Object 클래스가 무엇인지, 왜 중요한지를 쉽게 풀어보려 한다.Object 클래스는 자바의 모든 클래스의 최상위 부모 클

List를 처음 쓰다 보면 이런 코드를 만나게 된다.<String>이 뭔지 모르고 그냥 따라 쓰다가, 어느 순간 "이게 왜 있는 거지?"라는 의문이 생긴다. 이게 바로 제네릭(Generics)이다.제네릭이 생기기 전에는 컬렉션에 뭘 담든 Object 타입으로 처리