자바 무료강의 2시간 완성을 시청하고 간략히 정리
특정 기능을 수행하기 위한 코드 묶음
접근제어자 반환형 메소드명(전달값){
명령문;
명령문;
...
}
public class Main {
public static void main(String[] args) {
print(); // 메소드 호출
}
// 메소드 정의
public static void print(){
System.out.println("안녕!");
}
}
parameter
메소드를 전달할 때 전달하는 값
두 개 이상 여러개를 보낼 수 있다.
public class Main {
public static void main(String[] args) {
print("자두"); // "자두" 전달
}
public static void print(String name){// parameter
System.out.println(name+", 안녕!"); // "자두, 안녕!" 이 출력됨
}
}
return 키워드를 사용하며 메소드의 실행 결과를 돌려준다.
접근제어자 반환형 메소드명(){
명령문
명령문
return 반환값;//반환형이 void 가 아니라면, return 으로 반환값을 돌려줘야 함.
}
public class Main {
public static void main(String[] args) {
int num = getMaxNum();
System.out.println("num = "+num);
}
public static int getMaxNum(){
return 54; // 반환 값
}
}
접근제어자 반환형 메소드명(전달값){
명령문
명령문
return 반환값;
}
public class Main {
public static void main(String[] args) {
int num = add(10,12);
System.out.println("num = "+num);
}
/// 반환형(반환값)과 전달값이 있는 메소드
public static int add(int a, int b){
return a+b;
}
}
같은 메소드 이름, 다른 매개변수(전달값)를 가짐
접근제어자 반환형 메소드명(정수 전달값){}
접근제어자 반환형 메소드명(정수 전달값1, 정수 전달값){}
접근제어자 반환형 메소드명(실수 전달값){}
...
public class Main {
public static void main(String[] args) {
int num = add(10,12);
int num2 = add(10,12, 22);
double num3 = add(10.1,12.2);
System.out.println("num = "+num);
System.out.println("num2 = "+num2);
System.out.println("num3 = "+num3);
}
public static int add(int a, int b){
return a+b;
}
public static int add(int a, int b, int c){
return a+b+c;
}
public static float add(float a, float b){
return a+b;
}
}
변수를 쓸 수 있는 영역
변수가 유효한 영역
변수 선언 후, 가장 가까운 블록 내라고 생각하면 편함.
public class Main {
public static void main(String[] args) {
int a = 10;
}
public static void scope(){
System.out.println("a = "+a); // 사용 불가
}
}
public class Main {
public static void main(String[] args) {
System.out.println("a = "+a); // 사용 불가
}
public static void scope(){
int a = 10;
System.out.println("a = "+a);
}
}
public class Main {
public static void main(String[] args) {
int a = 10;
if(a > 5){
int d = 40;
System.out.println("d = "+d);
}
System.out.println("d = "+d); // 사용 불가
}