안드로이드 개발 질문/답변
(글 수 45,052)
1. super() 을 사용하는 것이 상위클래스에 대한 정보를 재정의해서 사용한다는 말인가요???
2. public void cho(){
}
- public cho()[{
}
여기서 void라는 말이 회사에서 따졌을때 업무하고 보고하는 것이아니라 그냥 업무하고 퇴근 한다는 그런말 아닌가요???
3. return() 이런말 자체가 값을 되돌려받는다는 말인죠?? 그런데 이것을 왜 쓰는지?? ㅠㅠ
4. 전개 부분에서
LayoutInflater inflater = LayoutInflater.from(context);
View view = inflater.inflate(R.layout.listcontent, parent, false);
이렇게 쓰는데 저기부분에 false,true 쓰는 경우가 있던데?? 어떤 이유인지 알수 있을까요???
정말 궁금하고 답답해서 허접한 질문 드립니다.
초보자로써 쉽게 알려주시면 감사합니다 ~
2011.03.24 00:40:44
1. 반은 맞으시고 반은 틀립니다.
super 는 메소드나 변수를 재정의하시는 부분에서 자주 출몰하니 맞는 부분도 있지만,
현재 클래스에 것이 아닌 부모의 것을 호출할 때 사용하니 질문하신 분의 생각과는 틀립니다.
2. void는 회사로 따졌을 때 보고 안하고 그냥 가는 것이 아닙니다.
만약 상사가 부하직원에게 "보고서를 작성해와" 라는 것을 프로그래밍으로 하면
"public 보고서 get보고서(상사지시사항 _지시사항1)
{
if(_지시사항1 == "결산")
return "결산보고서";
else
return "마켓팅보고서";
}"
이런식이 되고 return 값은 "보고서"가 되겠지요..
왜냐면 상사가 보고서를 작성하라고 지시했기 때문에
위에 메소드를 실행하면 보고서라는 산출물이 나와야 하겠죠?
반면 상사가 부하직원에게 "이거 보고서 B부서에게 넘겨줘"라고 지시하면
"public void send보고서(보고서 _보고서)"
라는 메소드가 나오겠지요.
당연히 보고서를 A 부서로 넘겨주었으니 올때는 빈손으로 와야하는게 정상이겠지요~
그래도 보고서를 넘겨주고 퇴근하는게 아니라 상사에게 잘 갔다주고 왔다는 표시로
원래 자기가 일하는 사무실로 돌아와야 하는게 정상이겠죠?
3번 return은 상사가 나에게 보고서를 작성하라고 시켰으니
내가 보고서를 작성한 후 상사에게 "옜다 받아라!!" 하고 던져 주는 것입니다.
"return 보고서" 라는 식으로요.
근데 간혹 그냥 "return" 만 쓰일 때도 있습니다.
이건 void에서 많이 쓰이는데, 위에 예로 들면..
상사가 나에게 A부서로 보고서를 주고 오라고 시켰는데, 혹시가 하고 그 부서 담당자에게
전화해서 "xx보고서 받았냐?"하고 물어봤더니 이미 받았다는 겁니다.
보고서를 이미 받았다는 내가 이걸 또 전해주러 갈 필요가 없겠지요?
그때 굳이 아래 부분까지 다 실행 힐 필요 없이 여기까지만 실행하자는 의미로 사용하는 겁니다.
한마디로 이 메소드는 여기까지만 실행해라!! 라는 거죠..
"if (A부서.contains(보고서))
return; "
4.번은 지금 이해하시기에는 아직 시간이 좀더 필요할 듯 합니다.
차차 java api 보는 법에 익숙해 지신 후에 다시 질문해 주십시요~ㅎ




void는 리턴 value가 없음을 이야기 합니다. 되돌아가지 않는 메소드는 무한루프를 제외하고 없으니까요...
return은 값을 돌려주는 의미도 있지만 메소드를 호출하는 부분으로 되돌아가는 의미도 있습니다.
return; 형태로 쓴다면 되돌아가는 의미뿐이겠죠.