본문 바로가기

JAVA/DAY 13 _ 23.09.04

Class Review

TestClass t1 = new TestClass(10, "문자열");
TestClass t2 = new TestClass(20, "무우우운자아아열");

int a = 10;
t1.doProcess(a);		// 이렇게 시행 : 10
t2.doProcess(a);		// 이렇게 시행 : 20


int result1 = t1.doProcess(a); 		// 이렇게 시행 : 10
int result2 = t2.doProcess(a); 		// 이렇게 시행 : 20

System.out.println("Result 1: " + result1); 		// Result 1: 13
System.out.println("Result 2: " + result2); 		// Result 2: 23


t1.doProcess(a);		// 이렇게 시행 : 10

// doProcess 메서드는 int 값을 반환하는 메서드 --> 따라서 return 문 다음에는 int 타입의 값을 반환해야 함
// return 문은 a + 3을 반환하고 있으며, 이 값은 doProcess 메서드를 호출한 곳으로 반환됨
// return 문을 만나면 메서드의 실행이 종료됨 -->  따라서 return 문 이후의 코드는 실행되지 않는다!
// 메서드 호출 시 doProcess(a)의 결과는 a + 3이며, "이 값을 변수에 저장하여 나중에 사용할 수 있음" ★★★
// 이 값은 result1, result2 변수에 저장되고 출력됨

 

 

String b = "이걸 메서드에 적용";
t1.doProcess2(b);				// String 메서드 : 이걸 메서드에 적용문자열
t2.doProcess2(b);				// String 메서드 : 이걸 메서드에 적용무우우운자아아열

String result3 = t1.doProcess2(b);		// String 메서드 : 이걸 메서드에 적용문자열
String result4 = t2.doProcess2(b);		// String 메서드 : 이걸 메서드에 적용무우우운자아아열

System.out.println("Result 3 : " + result3);	// Result 3 : 이걸 메서드에 적용 / 이렇게 반환된다고~
System.out.println("Result 4 : " + result4);	// Result 4 : 이걸 메서드에 적용 / 이렇게 반환된다고~

// --> 메서드 호출, 변수에 return값 저장됨, 출력시 return값이 출력됨!!!! ★★★
// --> 같은 메서드면, return 값이 같으니까 출력결과가 같겠찌???

 

class TestClass{
	
	
	// 1. 속성(= 인스턴스 선언) : 모든 속성은 private으로 쓰자!
	
	private int v1;
	private String v2;
	
	
	
	
	// 2. 생성자 : 아무것도 없는 생성자 1개, 모든 인스턴스를 포함한 생정자 1개를 답정너로 만들자!!!
	
	public TestClass() {}
	
	
	public TestClass(int v1, String v2){
		
		this.v1 = v1;
		this.v2 = v2;
	
	}
	
	
	
	
	// 3. 메서드(= 기능) : 모든 메서드는 public으로 쓰자!
	
	public int doProcess(int a) {		// 메서드로 어떠한 값을 받고싶다면 파라메터에 넣어주면 되겠지?
						// --> 근데 파라메터를 메서드 안쪽에서 사용하지 않는다면 굳이 선언하지 않는게 멋있겠지
		
		System.out.println("이렇게 시행 : " + v1);
		return a + 3;			// return type에 맞춰서 return해주기!!
	}
	
	
	public String doProcess2(String b) {
		
		System.out.println("String 메서드 : " + b + v2);
		return b + " / 이렇게 반환된다고~";
		
		// return b + "return을 두번쓸수는 없어?"; ---> 없어! return한번 하고나면 탈출이니까
	}
	
	
	
}

'JAVA > DAY 13 _ 23.09.04' 카테고리의 다른 글

싱글톤 패턴  (0) 2023.09.04
final  (0) 2023.09.04
static 2  (0) 2023.09.04
method 오버로딩 & static변수  (0) 2023.09.04
Star UML  (0) 2023.09.04