JAVA 프로그래밍

문제

함수 호출시 값을 전달받고, 함수 내에서 기본자료형 수정, 객체 값을 직접 수정, 새 객체를 생성하여 수정하는 프로그램입니다 이를 해결하는 다음 프로그램의 실행순서를 클릭하세요 
uppercase() 호출전   argument1 = a     argument2 = d     argument3 = g 
uppercase() 변경전  parameter1 = a    parameter2 = d    parameter3 = g 
uppercase() 변경후  parameter1 = A    parameter2 = D    parameter3 = G 
uppercase() 호출후   argument1 = a     argument2 = d     argument3 = G 

프로그램 코드

		
	class Char
	{
		protected char value;
		
P1b		public Char( char value ) {
			this.value = value;
P1e		}
		
		public String toString() {
			return this.value + " ";
		}
	}
		
	public class PassByValueVsPassByReference
	{
P2b		public static void uppercase( char parameter1, Char parameter2, Char parameter3 ) {
			System.out.println( "uppercase() 변경전  parameter1 = " + parameter1 + "    parameter2 = " + parameter2 + "   parameter3 = " + parameter3 );
		
P21			parameter1 = 'A';
P22			parameter2 =
P23			             new Char( 'D' );
P24			parameter3.value = 'G';
		
			System.out.println( "uppercase() 변경후  parameter1 = " + parameter1 + "    parameter2 = " + parameter2 + "   parameter3 = " + parameter3 );
P2e		}
		
1		public static void main( String[] args ) {
2			char argument1 = 'a';
3			Char argument2 =
4			                new Char( 'd' );
5			Char argument3 =
6			                new Char( 'g' );
		
			System.out.println( "uppercase() 호출전   argument1 = " +  argument1 + "     argument2 = " +  argument2 + "    argument3 = " +  argument3 );
7			uppercase( argument1, argument2, argument3 );
			System.out.println( "uppercase() 호출후   argument1 = " +  argument1 + "     argument2 = " +  argument2 + "    argument3 = " +  argument3 );
		
8		}
	}








 
실행 순서