2016-09-26 4 views
1

에 유용합니다. 값을 반환하지 않으면, 그 본질은 무엇입니까? 그리고 내가 보았던 void를 가진 대부분의 메소드는 println을 선언문 블록으로 사용합니다. 어떤 println 디스플레이가 값이 아닌가? 사용법 (void 형 메서드)을 결정하는 것은 무엇입니까?void 메소드를 작성하는 목적은 무엇이며, 메인 메소드

참고 : 저는 프로그래밍 초보자입니다. 그리고 void 형 메서드에서 본 모든 대답은 가치를 반환하지 않습니다.

답변

0

함수가 void을 반환하면 함수가 "부작용"을 통해 수행하는 모든 동작을 의미합니다.

부작용은 함수가 함수 자체의 외부 상태를 직접 변경하는 경우입니다.

println을 사용하여 화면에 인쇄하는 기능이있는 경우, 사용자가 지정한 텍스트를 삽입하여 전역 출력 스트림 (함수 외부에 있음)을 수정합니다.

함수는 부작용을 가질 수 있으며 동시에 값을 반환 할 수 있습니다. pop 작업은 일반적으로 요소 (부작용)를 제거하여 스택 개체를 수정 한 다음 팝업 한 개체를 반환합니다.

대부분의 경우 부작용이 이 필요합니다. 그러나이 유용 할 수 있습니다. 위 pop 예제에서 메서드가 스택을 직접 수정하지 않으면 요소가 제거 된 새 스택과 제거 된 요소를 모두 반환해야합니다. 튜플과 같은 것으로 래핑함으로써 두 가지가 즉시 반환됩니다.

코드가 모든 것을 반환하고 부작용을 가능한 한 적게받는다면 기능 코드라고합니다. 부작용에 의존하는 코드를 보유하고 있다면 명령형 코드로 알려져 있습니다 (총체적 단순화는 아이디어를 건너 뜁니다).

관련 문제