문제와풀이2번 출력
535
작성한 질문수 7
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예/아니오)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)
[질문 내용]
여기에 질문 내용을 남겨주세요.
package poly.expay;
public class PayService{
public void processPay(String name, int amount) {
boolean result;
System.out.println("결제를 시작합니다: " + "option = " + name + ", amount = " + amount);
if(name.equals("kakao")) {
KakaoPay kakaoPay = new KakaoPay();
result = kakaoPay.Pay(amount);
}
}
}다름이 아니라 result값에 kakaoPay.Pay(amount)를 넣는건 알겠는데 그반환값도 true로 되구요 근데 왜 메인에서 출력이 되는건가여? 제가 생각하기로는 result = true라고 생각을 하였는데, 따로 출력을 하기위해선 kakaoPay.Pay(amount); 만 써야 출력이 되지 않나요? 아님 result에 값을 대입함과 동시에 출력도 되는지요.
답변 2
0
안녕하세요. qpdlqg님
생각하는자님께서 잘 말씀해주셨는데요.
kakaoPay.Pay(amount); 를 호출하면 이 메서드가 실행됩니다. 그리고 이 메서드에 있는 내용들이 출력됩니다.
이 메서드의 호출이 끝나면 이 메서드의 호출 결과가 result에 담기게 됩니다.
지금 스택 구조에는 main() -> processPay()가 담겨 있는 상황이고, 여기서 kakaoPay.Pay(amount)를 호출하게 되면 그때는
main() -> processPay() -> Pay(amount)가 호출 됩니다. Pay(amount)의 결과를 반환하면 이때는 main() -> processPay()가 실행중이게 됩니다.
processPay()의 실행이 종료되면 main()으로 돌아갑니다.
감사합니다.
오타 제보 드립니다.
0
61
2
강의 화면이 안나와요
0
110
1
문제2번
0
90
1
static 변수를 호출할때 인스턴스변수 호출하듯이 호출해도 되나요?
-1
105
1
47번 리턴 관련 질문
0
99
1
문제2번
0
173
2
질문있습니다
0
97
1
1번 문제 질문입니다.
0
88
1
음악플레이어 문제 중 코드질문
0
84
1
9장 상속 문제와 풀이 질문
0
98
1
강의 자료에 사소한 오타가 있습니다.
0
119
2
매서드 참조값 반환??
0
127
1
접근제어자 - 쇼핑카트 문제에서 상품출력 부분 메서드
0
133
1
자바 기본편 - .(dot)에 관한 질문입니다!
0
136
1
공부방법
0
171
2
상속관계에서 멤버 변수는 오버라이딩 되는 개념이 아닌가요?
0
143
1
static method 질문
0
121
1
캡슐화 문제풀이 ShoppingCart 요구사항에 문제가 있어보입니다. 피드백 주세요
0
141
1
Method1에서 Student 객체
0
126
1
3강 18. null 질문
0
121
1
this 와 super의 호출 순서는 부모-자식관계 떄문만인가요?
0
129
1
팩토리 메서드 패턴과 일반 생성자 사용의 장단점
0
160
1
문의
0
152
1
9장 상속 문제와 풀이 부분 궁금한게 있어서 질문드립니다
0
169
1





