티스토리 뷰
1. 패키지(package)
1-1. 패키지 개요
1-1-1. 패키지란?
💡서로 관련 있는 클래스 또는 인터페이스 등을 모아 하나의 묶음(그룹)으로 단위를 구성하는 것
- 같은 패키지 내에서는 동일한 이름의 클래스를 만들 수 없지만, 패키지가 다르면 동일한 이름을 가진 클래스를 만들 수도 있다.
- 클래스명은 원래 패키지명을 포함하고 있다.
예) kr.ac.samhyook.method.Calculator (이게 클래스명) - 지금까지 클래스 명에 패키지 명을 함께 사용하지 않은 이유는 동일한 패키지 내에서 사용했기 때문이다. 그렇기 때문에 서로 다른 패키지에 존재하는 클래스를 사용하는 경우에는 클래스명 앞에 패키지명을 명시해서 풀 클래스 이름으로 사용해야 한다.
1-1-2. 패키지의 선언
package 패키지명;
- 클래스나 인터페이스의 소스파일(.java)의 최상단에 선언되어야 한다.
- 클래스 명명규칙과 다르게 소문자로만 작성하는 것을 원칙으로 한다.
- 패키지 명을 지정하지 않으면 자동적으로 이름 없는 패키지에 속하게 된다.
1-2. 패키지 확인
package com.ohgiraffers.section01.method;
public class Calculator {
// 모듈화(modulation) : 관련있는 것끼리 뭉쳐놓는다.
public int plusTwoNumbers(int first, int second) {
return first + second;
}
public int subTwoNumbers(int first, int second) {
return first - second;
}
public int multiTwoNumbers(int first, int second) {
return first * second;
}
public int divideTwoNumbers(int first, int second) {
return first / second;
}
public int minNumbersOf(int first, int second) {
return (first > second) ? second : first;
}
public static int maxNumbersOf(int first, int second) {
return (first > second) ? first : second;
}
}
package com.ohgiraffers.section02.package_and_import;
public class Application1 {
public static void main(String[] args) {
/* 수업목표. 패키지에 대해 이해할 수 있다. */
/* 설명.
* 패키지의 의미
* 1. 클래스의 소속이 다르다.(다른 소속에선 같은 클래스명을 쓸 수 있다.)(feat.Data 자료형)
* 2. 원래 클래스명의 일부분이다.
* 3. 경우에 따라 생략이 가능하다.(하지만 자동으로 작성되는 내용이다.)(같은 패키지일 때는 생략가능)
* */
/* 설명. non-static 메소드 호출해 보기(feat. 다른 패키지에 있는) */
com.ohgiraffers.section01.method.Calculator cal
= new com.ohgiraffers.section01.method.Calculator();
int plusResult = cal.plusTwoNumbers(100, 20);
System.out.println("100과 20의 합 = " + plusResult);
/* 설명. static 메소드 호출해 보기(feat.다른 패키지에 있는) */
int maxResult =
com.ohgiraffers.section01.method.Calculator.maxNumbersOf(100, 20);
System.out.println("두 수 중에 큰 수는 " + maxResult);
}
}
// 실행 결과
100과 20의 합 = 120
두 수 중에 큰 수는 100
2. 임포트(import)
2-1. 임포트 개요
2-1-1. 임포트란?
💡서로 다른 패키지에 존재하는 클래스를 사용하는 경우 패키지명을 포함한 풀 클래스 이름을 사용해야 한다.
but 매번 다른 클래스의 패키지명까지 기술하기에는 번거롭다
그래서 패키지명을 생략하고 사용할 수 있도록 한 구문이 import 구문!!
2-1-2. 임포트 선언
package 패키지명;
import 패키지명.*;
import 패키지명.클래스명;
import static 패키지명.클래스명;
...클래스
- import 문은 여러 개 명시할 수 있다.
- import 는 package 선언문과 class 선언문 사이에 작성하며 어떠한 패키지 내에 있는 클래스를 사용할 것인지에 대해 미리 선언하는 효과를 가진다.
- import 문은 소스파일(.java) 에서 package 문과 클래스 선언문 사이에 명시한다.
- static import 문은 static 메소드를 호출할 때 사용한다.
2-2. 임포트 확인
package com.ohgiraffers.section01.method;
public class Calculator {
// 모듈화(modulation) : 관련있는 것끼리 뭉쳐놓는다.
public int plusTwoNumbers(int first, int second) {
return first + second;
}
public int subTwoNumbers(int first, int second) {
return first - second;
}
public int multiTwoNumbers(int first, int second) {
return first * second;
}
public int divideTwoNumbers(int first, int second) {
return first / second;
}
public int minNumbersOf(int first, int second) {
return (first > second) ? second : first;
}
public static int maxNumbersOf(int first, int second) {
return (first > second) ? first : second;
}
}
package com.ohgiraffers.section02.package_and_import;
import com.ohgiraffers.section01.method.Calculator;
public class Application2 {
public static void main(String[] args) {
/* 수업목표. import에 대해 이해할 수 있다. */
/* 설명. 다른 패키지의 클래스명(full 클래스명)을 줄여쓰고자 할 때 쓸 수 있다. */
/* 설명. non-static 메소드의 경우 */
Calculator calculator = new Calculator();
int result = calculator.plusTwoNumbers(80, 22);
System.out.println("result = " + result);
int result2 = Calculator.maxNumbersOf(40, 90);
System.out.println("result2 = " + result2);
}
}
'한화시스템 > 백엔드' 카테고리의 다른 글
[BE] JAVA_조건문 (0) | 2024.07.13 |
---|---|
[BE] JAVA_API (0) | 2024.07.13 |
[BE] JAVA_메소드 (0) | 2024.07.13 |
[BE] JAVA_연산자 (0) | 2024.07.13 |
[BE] JAVA_형변환 (0) | 2024.07.13 |