자바의정석

[자바의 정석 - 기초편] ch6-17~19 메서드호출

유호야 2022. 3. 8. 18:13
반응형

ch6-17 메서드의 호출

메서드를 호출해야 메서드 구현부의 내용이 실행된다.

메서드 호출 : 메서드를 불러다 작업 시키는 것

 


ch6-17 메서드의 호출

메서드의 이름(값1, 값2,  ...  ) ; 
작업에 필요한 값들을 넣어준다. 

매개변수는 parameter (파라미터) 라고도 한다. 


실습 6-4

사칙연산 덧셈 뺄셈 나눗셈을 이용한 것

 

package ch06;

public class Ex6_4 {

	public static void main(String[] args) {
		MyMath m = new MyMath();
		long a = 100;
		long b = 200; 
		
		long add =  m.add(a, b);
		long minus = m.minus(a, b);
		long times = m.times(a, b);
		double divide = m.divide(a, b);
		
		System.out.println("result - add : " + add);
		System.out.println("result - minus : " + minus);
		System.out.println("result - times : " + times);
		System.out.println("result - divide : " + divide);
	}
	
	
	//사칙연산 메서드 생성
	
}

class MyMath {
	long add(long a, long b) {
		return a + b;
	}
	
	long minus(long a, long b) {
		return a - b;
	}
	
	long times(long a, long b) {
		return a * b;
	}
	
	double divide(double a, double b) {
		return a/b;
	}
}

 

메서드는 클래스 영역에만 정의 가능하다. 

예제가 있을 때 응용해보는 습관을 들면 좋다

Q. 두 값을 입력 받아서 둘 중에 큰 값을 변환하는 메서드를 작성해라

package ch06;

public class Ex6_4 {

	public static void main(String[] args) {
		MyMath m = new MyMath();
		int a = 100;
		int b = 300;
		
		int bigNum = m.compare(a, b);
		System.out.printf("%d와 %d 중에서 더 큰 값은 %d입니다.", a, b, bigNum);
	}
}

class MyMath {
	int compare(int a, int b) {
		return (a > b) ? a : b;
	}
}

 

3항연산자를 이용해서 
return 문을 (a>b) 중에 (a>b)가 true 이면, ? a를 반환 아니라면 : b를 반환해라


ch6-18 메서드의 실행흐름

1) 객체 생성
2) 메서드 호출

 

 

반응형