반응형

[Oracle Java Tutorial을 읽고 순서에 의해 정리한 후 본인의 경험과 이해를 바탕으로 작성된 글임을 밝힌다.]

[Java Tutorial, 자바 프로그래밍 기초 배우기, Java Programming, 자바 튜토리얼]

2019/06/10 - [Software/Java] - [Java_Tutorial]6강-자바 언어 배우기, 인터페이스(Interface)란? [객체지향 프로그래밍 개념, 자바 프로그래밍 기초 , 자바 튜토리얼]

 

[Java_Tutorial]6강-자바 언어 배우기, 인터페이스(Interface)란? [객체지향 프로그래밍 개념, 자바 프로그래밍 기초 , 자바 튜토리얼]

[Oracle의 Java Tutorial을 읽고 순서에 의해 정리한 후 본인의 경험과 이해를 바탕으로 작성된 글임을 밝힌다.] [Java Tutorial, 자바 프로그래밍 기초 배우기, Java Programming, 자바 튜토리얼] 2019/06/09 - [..

tiboy.tistory.com

[Java Tutorial, 자바 프로그래밍 기초 배우기, Java Programming, 자바 튜토리얼]

지난 내용들을 정리해 보자. 객체는 상태와 행위를 가지고 있다. 클래스는 객체를 만드는 청사진이다. 상속은 클래스의 필수 공통된 필드와 메서드를 슈퍼클래스에 구현하고 서브클래스에서 상속해서 사용한다. 인터페이스는 객체가 외부 세상과 상호작용을 하기 위한 통로 같은 것이다. 이제 마지막으로 패키지(Package)에 대해 알아본다.

5. 패키지란? (What is a Package?)

패키지(Package)의 사전적 의미를 보면 꾸러미라고 나와 있다. 자바에서는 어떤 의미로 사용되는지 확인해 본다.

자바(Java)에서 패키지(package)는 관계형 클래스와 인터페이스들을 한 곳에 모아 조직화해서 이름을 붙여 놓은 것(namespace)이다. 쉽게 생각하면 폴더(디렉토리)이다. 우리도 사진이나 동영상을 찍으면 종류별로 폴더로 구분해서 저장한다. 그 이유는 그룹화해서 보기 편하게 구분하기 위해서 이다. 우리가 자바 프로그래밍(코딩)을 하다 보면 클래스나 인터페이스가 수백 개에서 수천 개를 만들게 된다. 그 엄청나게 많은 클래스와 인터페이스를 한 폴더에 넣어두면 관리할 수가 없게 된다. 예를 들어 디자인 관련, 통신 관련, 데이터베이스 관련 등 연관 클래스와 인터페이스를 폴더별로 계층별로 구분하면 관리도 편하고 눈에 잘 읽힌다.

 

 

기본 자바 플랫폼에서 제공하는 API(application Programming Interface)도 거대한 클래스 라이브러리의 집합체이다. 당연히 패키지(package)로 구분해서 관리가 된다. 거대한 클래스 라이브러리를 구분하지 않고 한 곳에 넣어둔다면 File 객체, Socket 객체, GUI 객체 등을 찾고 사용하기가 힘들 것이다. 다행히 패키지(package)를 이용해 잘 구분해 놔서 우리는 편하게 검색해서 사용할 수 있는 것이다.

우리가 개발을 할 때 자바 플랫폼에서 제공하는 API 사용법에 대한 문서를 오라클에서 제공한다. Java Platform API Specification 이라고 부르며 다운로드하여서 사용할 수도 있고 사이트 링크를 통해 웹에서 접속도 가능하다. 가보면 엄청난 클래스와 인터페이스를 확인할 수 있다. 방대한 클래스와 인터페이스를 전부 다 알 필요는 없다. 그때 그때 필요한 경우 문서를 통해 확인해서 사용하면 된다.

실제 사용은 이렇게 한다.

package jt.b.first;

이제 객제 지향 프로그래밍 개념에 대한 4가지에 대해 알아보았다. 기본 개념만 아는 것으로도 충분하다. 앞으로 코딩을 하다 보면 점점 더 잘 알고 익숙해질 것이니 걱정 안 해도 된다. 지금은 그냥 이런것이 있구나 정도만 알면 된다.

다음 시간부터는 자바(java)언어의 기본 변수, 명령어에 대해 알아볼 것이다. 기본 자바 문법이라고도 한다. 드디어 코딩을 시작하는 것이다.

2019/06/15 - [Software/Java] - [Java_Tutorial]8강-자바 코딩, 원시데이터 타입 [Primitive Data Types, 자바 프로그래밍 기초 , 자바 튜토리얼]

환경설정을 미리 준비해서 직접 코딩해 보길 바란다.

반응형
반응형

[Oracle Java Tutorial을 읽고 순서에 의해 정리한 후 본인의 경험과 이해를 바탕으로 작성된 글임을 밝힌다.]

[Java Tutorial, 자바 프로그래밍 기초 배우기, Java Programming, 자바 튜토리얼]

2019/06/09 - [Software/Java] - [Java_Tutorial]5강-자바 언어 배우기, 상속란? [객체지향 프로그래밍 개념, 자바 프로그래밍 기초 , 자바 튜토리얼]

 

[Java_Tutorial]5강-자바 언어 배우기, 상속란? [객체지향 프로그래밍 개념, 자바 프로그래밍 기초 , 자바 튜토리얼]

[Oracle의 Java Tutorial을 읽고 순서에 의해 정리한 후 본인의 경험과 이해를 바탕으로 작성된 글임을 밝힌다.] [Java Tutorial, 자바 프로그래밍 기초 배우기, Java Programming, 자바 튜토리얼] 이제 객체와..

tiboy.tistory.com

지난 내용들을 정리해 보자. 객체는 상태와 행위를 가지고 있다. 클래스는 객체를 만드는 청사진이다. 상속은 클래스의 필수 공통된 필드와 메서드를 슈퍼클래스에 구현하고 서브클래스에서 상속해서 사용한다. 그럼 이제 객체지향 프로그래밍에서 중요한 역할을 하는 인터페이스(Interface)에 대해 알아본다.

4. 인터페이스란? (What is a Interface?)

인터페이스(Interface)의 사전적 의미를 보면 접점, 의사소통이라고 나와 있다. 자바에서는 어떤 의미로 사용되는지 확인해 본다.

클래스를 통해 인스턴스화 된 객체는 프로그램 곳곳에서 사용할 수 있다. 객체를 사용한다는 것은 객체의 행위가 구현된 메서드를 호출해서 사용할 수 있다는 것이다. 즉 외부에서 객체에게 명령을 내릴 때 해당 메서드를 사용하는데 이렇게 노출된 메서드를 인터페이스라고 한다. 마트에 가서 현금 인출기에서 돈을 찾을 때 모니터 상의 버튼들이 있을 것이다. 출금버튼, 비밀번호 숫자 버튼, 등 돈을 인출하기 위한 여러 가지 기능들을 사용할 수 있게 표출되어 있다. 바로 인터페이스다. 클래스에서 객체가 외부와 통신하기 위해 반드시 구현해야 하는 메서드들을 별도로 정의한 목록 같은 것을 자바에서 인터페이스로 정의해서 사용한다. 인터페이스를 구현한 클래스는 인터페이스의 모든 메서드를 구현해야 한다. 그렇지 않으면 컴파일 오류가 발생한다. 나중에 추상클래스도 배우게 될 텐데 인터페이스와 잘 구분해서 사용하면 된다. 사실 개념적으로 전혀 다른 구성이다. 또한 인터페이스는 상속과는 다르게 동시에 여러 개의 인터페이스를 구현받을 수 있다. 상속도 같이 사용가능하며 인터페이스도 다른 인터페이스를 상속할 수 있다. 이 부분은 추후 인터페이스에 대해 더 자세히 설명해 보겠다.

 

 

예를 들어보자. 보험사 개인 고객 클래스가 구현받을 수 있는 인터페이스를 생각해 보자. 우선 고객관련 메서드가 있을 것이다. 가입, 해지, 이름검색, 연락처 검색, 주소검색 등의 인터페이스가 있을 것이고 또 보험 상품과 연계된 인터페이스가 있을 것이다. 가입상품, 월납입액, 청구 등의 인터페이스가 있을 것이다. 그럼 고객 클래스는 이 두 개의 인터페이스를 구현받아서 해당 메서드들을 구현하면 된다. 또한 기업 고객 클래스도 있다고 가정하면 여기도 보험 상품과 연계된 인터페이스를 구현하면 될 것이다.

고객 인터페이스
보험상품 인터페이스

이처럼 2개의 인터페이스를 구현해서 사용할 수 있다. 인터페이스의 다양한 기능과 특징에 대해서는 다음에 더 자세히 다루기로 하고 이번은 개념 이해 정도로 정리하겠다.

인터페이스는 객체지향 프로그램에서 중요한 역할을 하기 때문에 나중에 인터페이스에 대한 글을 잘 읽어보길 바란다.

2019/06/13 - [Software/Java] - [Java_Tutorial]7강-자바 언어 배우기, 패키지(Package)란? [객체지향 프로그래밍 개념, 자바 프로그래밍 기초 , 자바 튜토리얼]

 

[Java_Tutorial]7강-자바 언어 배우기, 패키지(Package)란? [객체지향 프로그래밍 개념, 자바 프로그래밍 기초 , 자바 튜토리얼]

[Oracle의 Java Tutorial을 읽고 순서에 의해 정리한 후 본인의 경험과 이해를 바탕으로 작성된 글임을 밝힌다.] [Java Tutorial, 자바 프로그래밍 기초 배우기, Java Programming, 자바 튜토리얼] 2019/06/10 - [..

tiboy.tistory.com

객체지향 프로그래밍 개념의 마지막 글은 패키지(package)에 관한 것이다.

반응형