메소드
- 접근 제한자
- 실행 순서
접근 제한자
package com.test01;
public class MethodTest01 {
public static void main(String[] args) {
MethodTest01 test = new MethodTest01();
//static method 실행: 클래스명.메소드명();
MethodTest01.publicMethod();
MethodTest01.protectedMethod();
MethodTest01.defaultMethod();
MethodTest01.privateMethod();
test.NonStaticMethod();
}
//접근제한자(public, protected, default, private)
//퍼블릭: 어디서나 접근, 사용, 참조 가능(+)
public static void publicMethod() {
System.out.println("public method");
}
//상속일 경우 상속된 곳에서
//상속이 아닌 경우 같은 패키지 내애서(#)
protected static void protectedMethod() {
System.out.println("protectedMethod");
}
//같은 패키지 내에서(default)
static void defaultMethod() {
System.out.println("default method");
}
//현재 클래스 내에서(-)
private static void privateMethod() {
System.out.println("private method");
}
public void NonStaticMethod() {
System.out.println("non static method");
}
}
실행 순서
public class Methodtest04 {
public static void main(String[] args) {
Methodtest04 mt04 = new Methodtest04();
//실행 0.main 실행(프로그램 시작)
//mt04.methodA(); //1. mtA실행 -> mtA종료
//mt04.methodB(); //2. mtB실행 -> mtB종료
//mt04.methodC(); //3. mtC실행 -> mtC종료 4.main 종료(프로그램 종료)
mt04.methodA(); //mtA실행 -> mtB실행 -> mtC실행 -> mtC종료 -> mtB종료 -> mtA종료
}
public void methodA() {
System.out.println("methodA() 호출...");
methodB();
}
public void methodB() {
System.out.println("methodB() 호출...");
methodC();
}
public void methodC() {
System.out.println("methodC() 호출...");
}
}
public class Methodtest05 {
public static void main(String[] args) {
Methodtest05 mt05 = new Methodtest05();
int num = mt05.test();
System.out.println(num);
System.out.println(mt05.test3());
System.out.println(mt05.test4(3)); // 매개변수의 경우 값을 꼭 넣어줘야
}
//리턴 타입
public int test() {
int no = 10 + 20;
System.out.println("test() 실행...");
return no +1;
}
public double test2() {
return 10.1;
}
public String test3() {
return "반미";
}
//int i: 매개변수
public int test4(int i) {
return 11+i;
}
}
'Java > Java 개념' 카테고리의 다른 글
06. 제어문 - 반복문, 분기문 (0) | 2022.10.02 |
---|---|
05.제어문 - 조건문 (0) | 2022.10.02 |
04.연산자 (0) | 2022.09.29 |
02.형변환 & 변수와 메모리 구조 (0) | 2022.09.28 |
01.변수(variable) (0) | 2022.09.28 |