Java/객체지향 프로그래밍 심화4 4. 추상화(Abstraction) 📌 Goal 추상화의 핵심 개념과 목적을 이해하고 설명할 수 있다. abstract 제어자가 내포하고 있는 의미를 이해하고, 어떻게 사용되는 지 설명할 수 있다. 추상 클래스의 핵심 개념과 기본 문법을 이해할 수 있다. final 키워드를 이해하고 설명할 수 있다. 자바 추상화에서 핵심적인 역할을 수행하는 인터페이스의 핵심 내용과 그 활용을 이해할 수 있다. 추상 클래스와 인터페이스의 차이를 설명할 수 있다. 📌 추상화(Abstraction) “사물이나 표상을 어떤 성질, 공통성, 본질에 착안하여 그것을 추출하여 파악하는 것” 자바에서의 추상화는 객체의 공통적인 속성과 기능을 추출하여 정의하는 것을 의미 상속이 하위 클래스를 정의하는데 상위 클래스를 사용하는 것이라고 한다면 추상화는 반대로 기존 클래스들.. 2022. 7. 13. 3. 다형성(Polymorphism) 📌 Goal 자바 객체지향 프로그래밍에서 다형성이 가지는 의미와 장점을 이해할 수 있다. 참조변수의 타입 변환에 대한 내용을 이해하고, 업캐스팅과 다운캐스팅의 차이를 설명할 수 있다. instanceof 연산자를 언제 어떻게 활용할 수 있는 지 이해하고 설명할 수 있다. 코딩 예제를 실제로 입력해보면서 다형성이 실제로 어떻게 활용되는 지 이해할 수 있다. 📌 다형성(Palymorphism) 하나의 객체가 여러 가지 형태를 가질 수 있는 성질을 의미 자바 프로그래밍에서 다형성은 한 타입의 참조변수를 통해 여러 타입의 객체를 참조할 수 있도록 만든 것을 의미한다. 구체적으로 말하자면, 상위 클래스 타입의 참조변수를 통해서 하위 클래스의 객체를 참조할 수 있도록 허용한 것이라고 말할 수 있다. 아래 예시를 살.. 2022. 7. 13. 2. 캡슐화(Encapsulation) 📌 Goal 캡슐화의 핵심 개념과 목적을 이해하고 설명할 수 있다. 패키지의 개념과 import문이 어떻게 사용되는 지 이해할 수 있다. 자바에서 캡슐화를 달성하기 위핸 핵심적인 수단으로 접근제어자 네 가지를 이해하고, 각각의 접근 가능 범위를 설명할 수 있다. 데이터를 효과적으로 보호하기 위한 수단으로 getter/setter 메서드를 이해하고 사용할 수 있다. 📌 캡슐화(Encapsulation) 특정 객체 안에 관련된 속성과 기능을 하나의 캡슐(capsulate)로 만들어 데이터를 외부로부터 보호함 ✔️ 캡슐화의 목적 외부로부터 객체의 속성과 기능을 함부로 변경하지 못하게 막고, 데이터가 변경되더라도 다른 객체에 영향 다른 객체에 영향을 주지 않기에 독립성을 확보할 수 있다. 더 나아가 유지보수와.. 2022. 7. 11. 1. 상속(Inheritance) 📌 Goal 상위 클래스-하위 클래스의 상속 관계의 핵심을 이해하고, 그 장점을 설명할 수 있다. extends 키워드를 사용하여 두 개 이상의 클래스 간 상속 관계를 정의할 수 있다. 포함관계와 상속관계의 차이를 설명할 수 있다. 상속 관계에서 사용할 수 있는 메서드 오버라이딩의 정의, 성립 조건, 장점을 이해하고 이를 활용할 수 있다. super 와 super() 의 차이를 설명할 수 있다. Object 클래스가 자바 클래스의 상속계층도에서 최상단에 위치한다는 사실을 이해할 수 있다. 📌 상속(Inheritance) 기존 클래스를 재사용하여 새로운 클래스를 작성하는 자바의 문법 요소 기존 클래스와 새로운 클래스를 단순한 형태로 생각해보면, 두 클래스를 상위 클래스와 하위 클래스로 나누어 상위 클래스의.. 2022. 7. 11. 이전 1 다음