Skip to content
Bible, Lee, Data

Bible, Lee, Data

Faith, software, data, and everyday life.

JavaAll posts

Engineering/Backend

Java의 이해: 추상화, 캡슐화, 상속, 다형성

💡추상화 (Abstraction) 추상화는 관련 없는 사항을 은닉 또는 삭제하여 핵심적인 개념 또는 기능만을 간추려 내는 작업으로, 나에게 필요한 특징만을 표현하여 본질적 문제에 집중할 수 있도록 한다. ⚬ 소프트웨어 설계 소프트웨어 설계는 요구사항 분석 단계에서 산출된 요구사항명세서를 기반으로 어떻게 소프트웨어를 구현할 것인지 설계서를 통해 그 방법을 명시하는 과정이다. ⚬ 객체지향 설계 추상화 객체지향 프로그래밍(Object-Oriented Programming, OOP)은 추상화, 상속, 다형성, 캡슐화의 네 가지 특징을 가지며, 객체지향 프로그래밍 설계에서 추상화가 요구된다. 비슷한 특성을 가진 것을 그룹화하는 것을 객체지향 설계에서의 추상화라고 한다. 1. 과정 추상화 (Procedure Abs..

Engineering/Backend

Java의 이해: 클래스와 객체

💡클래스 (Class) 클래스는 멤버 변수 및 메서드를 포함하는 객체를 만들기 위한 코드 양식으로서, 인스턴스(메모리에 할당된 객체)를 생성하는 설계도(틀)라고 할 수 있다. 속성을 표현하는 변수인 필드(Field)와 기능을 표현하는 메서드(Method)로 구성된다. ⚬ 내부 클래스 (Inner Class / Non-Static Nested Class) 내부 클래스는 일반 클래스의 내부에 생성된다. 외부의 클래스는 new 인스턴스를 만들어 내부 클래스를 멤버 변수처럼 사용이 가능하다. 또한 내부 클래스는 외부에 있는 클래스의 자원을 직접 사용할 수 있다. ⚬ 중첩 클래스 (Nested Class) 중첩 클래스는 다른 클래스 내에 정의되어있는 클래스로, 클래스를 보조하는 용도로만 사용한다. 클래스를 묶어서..