Language/Java
메서드 기본( with static)
쿠키오빠
2024. 9. 2. 07:49
반응형
메서드!!!
코딩은 외우지 말고 이해하라고 하지만 메서드 공식은 외워서 나쁠 거 없다 ^ㅅ^
① 공식 : class명 변수명 = new class명(); → 최초, 메서드를 사용하겠다.
② 메서드를 사용하겠다 선언을 했으니 만들어 놓은(A,B,C) 메서드를 호출만 하면 된다.
공식 : 변수명.method명();

만약 전달인자가 50이 아니라 “안녕”(문자열)이라면 String var (자료형 일치)로 넣어줘야 한다.
static은 [클래스명.메서드명] 형식으로만 부르기!!
(new 형식은 오류는 나지 않아도 권장하지 않는다)
public class Application9 { (이해만 하자)
public static void main(String[] args) {
/* title. 다른 클래스에 작성한 메서드를 호출할 수 있다. */
/* comment. 우리는 Application에서 2개의 정수를 전달할 것이고, Calculator 클래스는 2개의 정수를 전달 받아,
* 최소값을 구하는 메서드 (기능)
* 최대값을 구하는 메서드 (기능)
* 실행 후 Application에게 2개의 정수 중 큰 값과 작은 값이 무엇인지 알려줄 것이다. */
int first = 20;
int second = 5;
Calculator calc = new Calculator();
/* comment. non-static method 호출 방식 */
calc.minNumberOf(first, second); // 삭제 가능한 코드 (min에 넣어 놨으니)
int min = calc.minNumberOf(first, second);
System.out.println("min = " + min);
/* comment. static method 호출 방식 */
/* comment. static 메서드도 non-static 메서드처럼 호출은 가능하나, 권장하지 않는다. → 노란 줄
* 이미 메모리에 로딩이 되어있는 static 메서드는 여러 객체가 공유하게 된다.
* new 키워드로 접근하게 된다면, 공유된 값에 예상치 못한 동작을 유발할 수 있이 때문에 사용을 제한해 달라는 컴퓨터의 주의 문구. → 노란 줄 */
Calculator.maxNumberOf(first, second); // 삭제 가능한 코드 (max에 넣어 놨으니)
int max = Calculator.maxNumberOf(first, second); // static은 [클래스명.메서드명] 형식으로만 부르자. (노란 줄 뜬다..)
System.out.println("max = " + max);
}
}↓↑↓↑↓↑↓↑↓↑↓↑↓↑↓ (static과 기본형 메서드 차이) 위와 아래를 연결 방법 ↑↓↑↓↑↓↑↓↑↓
public class Calculator {
/* comment. 우리는 Application에서 2개의 정수를 전달할 것이고, Calculator 클래스는 2개의 정수를 전달 받아,
* 최소값을 구하는 메서드 (기능)
* 최대값을 구하는 메서드 (기능)
* 실행 후 Application에게 2개의 정수 중 큰 값과 작은 값이 무엇인지 알려줄 것이다. */
public int minNumberOf (int first, int second) {
return (first < second) ? first : second; // 항상 min 값 출력
}
public static int maxNumberOf (int first, int second) { // static이란 공유하면서 바뀌지 않는 값이란 걸 알아두자
return (first > second) ? first : second; // 항상 max 값 출력
}
}반응형