본문 바로가기

JAVA/DAY 12 _ 23.09.01

move memory

public class P1_moveMemory {

	public static void main(String[] args) {
		
		int a = 10;
		
		Test1 t1 = new Test1();				
        // t1이라는 참조변수가 Test1의 주소값을 받아내는 과정
			
		t1.do1(a);							
        // t1이 -> 접속한다 -> do1 메서드에 (메서드 호출 문법)

		System.out.println(a + "이것은 main의 a값. 변수를 메서드에서 바꿔도 얘는 변하지 않는다는거");
		
		t1.do1(a);

	}

}

 

class Test1{
	
	void do1(int a){		// ★★★ main에 int a = 10을 클래스로 가져오는 방법
					// main의 a와 다른 메모리의 a (수를 가져올 수 있음)
		
		System.out.println(a + "이건 do1의 숫자");
		System.out.println("do1 호출됨");
		do2(a);			// do1을 호출하면 syso다음에 do2가 호출된다
					// 같은 클래스 내에 있는 것은 이렇게 써도 호출이 되겠지...
					// do1()안에 int a 등이 있으면 do2()안에 a를 넣으면 되겠지
	}
	
	
	
	void do2(int a) {		// do1의 a와 다른 메모리의 a (do1의 수를 가져올 수 있음)
		
		a = 50;
		System.out.println(a + "이건 do2의 숫자, do2 메서드 안에서 a가 50으로 바뀜");
		System.out.println("do2 호출됨");
		do3(a);
	}
	
	
	void do3(int a) {		// do2의 a와 다른 메모리의 a (do2의 수를 가져올 수 있음)
		System.out.println(a + "이건 do3의 숫자");
		System.out.println("do3 호출됨 -> 이런식이면 main에서 scn으로 입력받은 값을 메소드로 호출할 수 있겠다!!!!!!!");
	}
	
	
	
}

'JAVA > DAY 12 _ 23.09.01' 카테고리의 다른 글

class study - Private Account  (0) 2023.09.10