전체 글(37)
-
다형성
더보기 여러 관계에서 다형성에 대해 이야기할 수 있지만 그 중 가장 기본은 오버라이딩(Overriding) 과 오버로딩(Overloading)이다. 처음엔 오버라이딩과 오버로딩에 대해서 헷갈릴 수 있는 데 간단하게 단어의 뜻으로 외우면 된다. ride : 올라타다 load : 적재하다 이삿짐을 예를 들면 이삿짐을 트럭에 실는 것을 위에서 아래로 내려다 봤을 때 위로 쌓아올렸을 때 ( = ride) 는 가장 마지막에 올린 짐만 보이지만 나란히 적재 했을 때( = load ) 는 모든 짐이 보인다. 그러면 어떤 것이 오버로딩인지 오버라이딩인지 맞춰보자 ( 클릭하면 정답이 나온다!! ) HTML 삽입 미리보기할 수 없는 소스 이제 오버라이딩과 오버로딩을 구분할 수 있을 것이다. ( 믿어요,, ) 이제 이것을 ..
2022.11.15 -
상속성
위의 예시를 보면 알 수 있듯이 객체 지향에서의 상속은 우리가 일반적으로 알고 있는 상속의 개념이 아니라 상위 클래스의 특성을 하위 클래스에서 상속하고 거기에 더해 필요한 특성을 추가하는 것이다. 즉 확장과 세분화의 개념이다. 따라서 부모 클래스 - 자식 클래스라는 표현보다는 상위 클래스 - 하위 클래스 또는 슈퍼 클래스 - 서브 클래스라는 표현이 맞고 상위 클래스 쪽으로 갈수록 추상화, 일반화 됐다고 말하며, 하위 클래스 쪽으로 갈수록 구체화, 특수화 됐다고 말한다. 상속 관계에서 반드시 만족해야 할 문장이 있다. " 하위 클래스는 상위 클래스이다. " - 로버트 C.마틴의 객체 지향 설계 5원칙 中 LSP( 리스코프 치환 원칙 ) - 예를 들어보자 상속의 잘못된 예인 조직도의 경우 - 아버지는 할아버..
2022.11.14 -
추상화 ( Abstracion )
※ 해당 게시물은 스프링을 위한 자바 객체 지향의 원리와 이해 ( 김종민 지음 ) 을 읽고 요약하여 작성한 것입니다. 추상 ( 抽象 ) [ 명사 ] 심리 여러 가지 사물이나 개념에서 공통되는 특성이나 속성 따위를 추출하여 파악하는 작용. 추상-화 抽象畫 [ 명사 ] 미술 사물의 사실적 재현이 아니고 순수한 점ㆍ선ㆍ면ㆍ색채에 의한 표현을 목표로 한 그림. 일반적으로는 대상의 형태를 해체한 입체파 등의 회화도 포함한다. 추상-화 抽象化 [ 명사 ] 추상적인 것으로 됨. 또는 그렇게 만듦. 추상화는 모델링이다. 추상화란 구체적인 것을 분해해서 관심있는 특성만 가지고 재조합하는 것이라고 정리할 수 있다. 객체 지향의 특성은 클래스를 통해 구현된다 또는 객체라고 할 수 있다. 클래스와 객체에 대해 잘 모르겠다면 ..
2022.11.14 -
객체 지향의 4대 특성
※ 해당 게시물은 스프링을 위한 자바 객체 지향의 원리와 이해 ( 김종민 지음 ) 을 읽고 요약하여 작성한 것입니다. 와우.. 캡! 상추다!! 캡 - 캡슐화 ( Encapsulation ) : 정보 은닉 ( Information hiding ) 상 - 상속 : 재사용과 확장 추 - 추상화 ( Abstraction ) : 모델링 다 - 다형성 ( Polymorphism ) : 사용 편의
2022.11.14 -
객체(Object)와 클래스(Class)
※ 해당 게시물은 스프링을 위한 자바 객체 지향의 원리와 이해 ( 김종민 지음 ) 을 읽고 요약하여 작성한 것입니다. ob·ject 명사 [ |ɒbdʒɪkt; 美 |ɑːbdʒekt; |ɑːbdʒɪkt ] 동사 [ əb|dʒekt ] 1. 물건, 물체 2. 욕망, 연구, 관심 등의 대상 3. 목적, 목표 object는 객체보다는 개체라는 뜻이 더 어울린다. 개체 個體 [ 명사 ] - 전체나 집단에 상대하여 하나하나의 낱개를 이르는 말. - 생명 하나의 독립된 생물체. 살아가는 데에 필요한 독립적인 기능을 갖고 있다. - 철학 단일하고 독립적인 통일적 존재. 철학 사상의 발전 과정에서 이 통일성은 물질적ㆍ양적 측면, 또는 정신적ㆍ질적 측 면 따위의 여러 관점에서 고찰되었다. 이해하기 쉽게 객체와 클래스의 개..
2022.11.11 -
JVM, JRE, JDK 이란
※ 해당 게시물은 스프링을 위한 자바 객체 지향의 원리와 이해 ( 김종민 지음 ) 을 읽고 요약하여 작성한 것입니다. 이해하기 쉽게 먼저 JVM, JRE, JDK 의 원래 명칭을 알아두자. - JVM ( Java Virtual Machine ) / 자바 가상 기계 ( 가상의 컴퓨터 ) - JRE ( Java Runtime Environment ) / 자바 실행 환경 ( JVM용 OS ) - JDK ( Java Development Kit ) / 자바 개발 도구 ( JVM용 소프트웨어 개발 도구 ) JVM 은 이름 그대로 가상 기계이다. 컴퓨터를 구동하기 위해서는 물리적 컴퓨터인 하드웨어와 운영체제, 그리고 그 위에서 구동될 소프트웨어가 필요하다. 거기에 더해 소프트웨어를 개발할 수 있는 개발 도구가 필요..
2022.11.11