반응형
메소드(method)
- 특정 작업을 수행하기 위한 명령문의 집합
- 메소드는 다른 메소드를 호출 가능(메소드를 호출한 곳으로 돌아옴)
public class Application1 {
public static void main(String[] args) {
System.out.println("main()시작됨");
● 객체 생성 : 클래스명 사용할이름 = new 클래스명();
● 메소드 호출 : 사용할 이름. 메소드명();
Applicaiton1 app1 = new Application1();
app.methodA();
System.out.println("main() 종료됨");
}
public void methodA(){
System.out.println("mathodA() 호출함") ;
}
}
● 실행 결과
main() 시작됨
methodA() 호출함
main() 종료됨
전달인자와 매개변수를 이용한 메소드 호출
- 메소드 실행 시 어떠한 값을 미리 주고(전달인자)그 값을 활용(매개변수)해서 메소드를 수행 가능
- 지역변수는 선언한 메소드 블럭 내부에서만 사용이 가능함 (지역변수의 스코프)
- 다른 메소드와 공유해야하는 값이 존재하는 경우 메소드 호출 시 '( )'를 이용해서 값을 전달 할 수 있음
1 . 전달 인자로 값 전달 테스트
- 호출하려는 메소드의 매개변수 선언부에 미리 선언해둔 자료형과 갯수, 순서가 일치하게 값을 넣어 호출해야 함.
public class Application3 {
public static void main(String[] args) {
Application3 app3 = new Application3();
app.testMethod(20 전달인자);
(x)app3.testMethod("30"); 매개변수와 같은 자료형으로 호출해야함.
(x)app3.testMethod(20, 30, 40); 매개변수와 같은 갯수여야함.
(x)app3.testMethod(); 값이 없어도 오류
}
public void testMethod(int age 매개변수) {
System.out.println("당신의 나이는 " + age + "세 입니다.");
}
● 실행 결과
당신의 나이는 20세 입니다.
2 . 변수에 저장한 값 전달 테스트
public class Application3 {
public static void main(String[] args) {
Application3 app3 = new Application3();
● 변수에 저장 된 값을 이용하여 호출
int age = 90;
app3.testMethod(age);
● 자동 형변환을 이용하여 호출
byte byteAge = 10;
app3.testMethod(byteAge);
● 강제 형변환을 이용하여 호출(데이터 손실 주의)
long longAge = 30;
app3.testMethod((int)longAge);
● 연산 결과를 이용하여 호출
int age1 = 5;
app3.testMethod(age*3);
}
public void testMethod(int age) {
System.out.println("당신의 나이는 " + age + "세 입니다.");
}
}
● 실행 결과
당신의 나이는 90세 입니다.
당신의 나이는 10세 입니다.
당신의 나이는 30세 입니다.
당신의 나이는 15세 입니다.
3 . 여러 개의 전달인자와 매개변수를 이용한 메소드 호출
- 매개변수의 개수나 자료형의 제한은 없으며 상수도 사용 가능함.
public class Application4 {
public static void main(String[] args) {
Appliication4 app4 = new Application4();
● 여러 개의 전달 인자를 이용한 메소드 호출
app4.testMethod("박보검", 30, '남');
● 변수에 저장 된 값을 전달하여 호출
String name = "아이유";
int age = 20;
har gender = '여';
pp4.testMethod(name, age, gender);
}
public void testMethod(String name, int age, final char gender) {
System.out.println("당신의 이름은 " + name + "이고, 나이는 "
+ age +"세 이며, 성별은 " + gender + "입니다.");
}
● 실행 결과
당신의 이름은 박보검이고, 나이는 30세 이며, 성별은 남입니다.
당신의 이름은 아이유이고, 나이는 20세 이며, 성별은 여입니다.
반응형
'프로그래밍 > java' 카테고리의 다른 글
[자바JAVA] 패키지 (package) & 임포트 (import) (0) | 2022.07.04 |
---|---|
[자바JAVA] 메소드 (method)_ retrurn, static 메소드 호출 (0) | 2022.07.04 |
[자바 JAVA] 연산자 ( 산술, 복합 대입, 증감, 비교, 논리, 삼항) (0) | 2022.06.29 |
[자바 JAVA] 오버플로우/ 언더플로우 / 자동형변환 / 강제형변환 (0) | 2022.06.27 |
[자바JAVA] 변수와 상수 (선언하기 , 초기화하기, 규칙) (0) | 2022.06.26 |