#메쏘드
다음의 예를 보자.
public class Test {
int a; // 객체변수 a
public void vartest(Test test) {
test.a++;
}
public static void main(String[] args) {
Test myTest = new Test();
myTest.a = 1;
myTest.vartest(myTest);
System.out.println(myTest.a);
}
}
//객체를 전달하여서 객체를 직접 수정
If you want to change selection, open document below and click on "Move attachment"
5-2 메쏘드#13;
해법은 위 예처럼 vartest메소드에 return문을 이용하는 방법이다. vartest 메소드는 입력으로 들어온 값을 1만큼 증가시켜 리턴한다. 따라서 a = myTest.vartest(a) 처럼 하면 a의 값은 다시 vartest메소드의 리턴값으로 대입된다. (1만큼 증가된 값으로 a의 값이 변경된다.)
이번에는 아까 잠깐 언급한 객체를 넘기는 방법에 대해서 알아보자.
<span>다음의 예를 보자.
public class Test {
int a; // 객체변수 a
public void vartest(Test test) {
test.a++;
}
public static void main(String[] args) {
Test myTest = new Test();
myTest.a = 1;
myTest.vartest(myTest);
System.out.println(myTest.a);
}
}
이전 예제에서는 a 라는 int 자료형 변수를 main메서드에 선언했는데 위 예제에는 다음과 같이 Test 클래스의 객체변수로 선언했다.
int a; // 객체변수 a
그리고 vartest 메소드는 다음과 같이 Test클래스의 객체를 입력받아 해 Summary
status | not read | | reprioritisations | |
---|
last reprioritisation on | | | suggested re-reading day | |
---|
started reading on | | | finished reading on | |
---|
Details