[ Java ] 7장. 객체, 인스턴스화 ( + 자바 특징 )
[ 객체(인스턴스)화 ]
객체화(인스턴스화)는 코드를 실제 세계의 사물들로 표현하는 것
- 객체마다 고유한 특성과 행동을 지님
- 다른 객체와 정보를 주고 받고 상호작용을 함
- 컴퓨터에서 객체는 테트리스의 블록이나 한글 프로그램의 메뉴나 버튼들을 의미
[ 캡슐화 ]
자바의 가장 근본적인 특징
외부의 접근으로부터 객체를 보호
- 클래스 : 객체 모양을 선언하는 틀
- 객체 : 생성된 실체(인스턴스) - 클래스내에 메소드와 필드 구현
[ 상속 ]
- 상위 개체(상위 클래스)가 하위 개체(하위 클래스)에 물려짐.
- 하위 개체(하위 클래스)가 상위 개체(상위 클래스)의 속성을 모두 가짐.
< Animal (슈퍼) 클래스 >
Class Animal {
String name;
int age;
void eat() { }
void cry() { }
void love() { }
}
< Human (서브) 클래스 >
Class Human extends Animal { // Animal 클래스를 상속
/* 선언을 하지 않아도 상속으로 이미 Animal 특징을 가짐.
String name;
int age;
void eat() { };
void cry() { };
void love() { };
*/
String hobby;
String job;
void work() { };
}
[ 다형성 ]
같은 이름의 메소드가 클래스 혹은 객체에 따라 다르게 구현되는 것
- 메소드 오버로딩 : 한 클래스 내에서 이름은 같지만 다르게 작동하는 여러 메소드
- 메소드 오버라이딩 : 슈퍼 클래스의 메소드를 동일한 이름으로 서브 클래스마다 다르게 구현
[ 객체지향 언어의 목적 ]
- 생상성 향상
- 산업 발전에 따른 소프트웨어 생명 주기 단축
- 상속, 다형성, 객체, 캡슐화 등 재활용을 위한 여러 장치 내장
- 재사용과 부분 수정이 빠름
- 생산성 향상
- 실세계에 대한 쉬운 모델링
[ 클래스와 객체 ]
클래스 (붕어빵 틀)
객체 (붕어빵)
붕어빵 기계라는 틀이 있고, 그 틀로 팥 붕어빵(객체1), 생크림 붕어빵(객체2)을 찍어낼 수 있다.
클래스와 객체를 붕어빵 기계와 붕어빵으로 연결하면 어떤 느낌인지 이해하기 쉽다.
< 클래스의 구성 >
- Class 키워드로 선언.
- 멤버 ( 필드(멤버 변수)와 메소드(멤버 함수) )
- 클래스에 대한 접근 지정
- 멤버에 대한 접근 지정
Author And Source
이 문제에 관하여([ Java ] 7장. 객체, 인스턴스화 ( + 자바 특징 )), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@tpdlqj0514/Java-6장.-객체-인스턴스화저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)