오래 못 할 짓 하지 않기

Java 3 (Interface, package) 본문

2학년 1학기/JAVA

Java 3 (Interface, package)

쫑알bot 2023. 3. 7. 15:21
728x90

// 다음 랩에서는 상속 그리기 한다고 함. 정리하면서 연습해 보기

 

  • 인터페이스

-      기능: 클래스에서 Object가 해야 하는 어떤 행동과 Standard를 정리해 놓은 큰 틀

          →  객체(=클래스) 사용 방법의 가이드라인클래스들이 반드시 수행해야 하는 메소드들을 정리해 놓은 것 (뼈대라고 생각하셈)

 

Ex) 블루투스 이어폰

  1. 인터페이스 : “블루투스 이어폰이면 Play_music() / Connected_check / …이 있어야 함. “

 

  2. 따라서 여러 블루투스 이어폰 ( 에어팟, 버즈 , QCY ) 등의 블루투스 이어폰들은 위 인터페이스에서 만든 블루투스 이어폰 클래스를 implements 받고, Play_music() / Connected_check / …가 있어야 함

[ A Implements B로 선언되는데 " A에서 B라는 뼈대에 살을 채울게! " 이런 느낌으로 이해하면 됨 ]

 

   → 따라서 에어팟 버즈 QCY의 재생, 연결 확인법은 다를지 몰라도 그런 기능들은 다 있음.

 

 


  • Package

- 개념 이해 예시)

    우리가 자료들을 파일에 정리할 때 어떻게 하나?

    사진파일을 예로 들어보자. 몇 만장이 있다고 하면, 한 파일에 다 넣는 게 아니라.

    사진 - 2001년 , 2002년 , 2003년 사진들을 폴더에 나눠놓고

    그 안에서도 몇 월 or 장소별로 나눌 것이다.

 

 

자바도 관련된 클래스들을 폴더별로 모아놓는데, 이때 사용되는 키워드가 Package다.

딱히 복잡한 건 없고 한 파일이 다른 파일과 이름이 같거나,

한 파일에 여러 자료가 있으면 복잡하니까 비슷한 자료들끼리 묶어놓는 개념이다.

 

 

이렇게 만든 폴더들을 패키지라고 생각하면 될 것 같다.

 

그럼 어느 패키지에 만든 class를 다른 패키지에서 쓰려면 어떻게 해야 하나?

Import 

위 사진으로 예시 ex) 팀 패키지에서 어떤 걸 만들다가 ERC - 5주 차 폴더(패키지)에 있는 hello Class가 필요하다?

Import ERC.5thweek.hello  라고 하면 ERC 5주 차 패키지에 있는 hello클래스를 팀 패키지에서 쓸 수 있음. 

(추가 팁으로는 5thweek.* 하면 5주 차 패키지에 있는 모든 클래스 다 쓴다는 뜻)

 

 

출처: 한동대학교 남재창 교수님 - Java programming PPT

유튜브 programmers - https://www.youtube.com/watch?v=oxcYVqdQQrI&t=394s

'2학년 1학기 > JAVA' 카테고리의 다른 글

Hash map , map  (0) 2023.05.25
Regular Expression  (0) 2023.05.22
ArrayLIst , Hashmap  (0) 2023.05.18
Java 2  (0) 2023.03.07
Java 1  (1) 2023.03.07