Java 문장 블록
나는 C, C ++ 및 Java 프로그래밍 책을 처음 읽었을 때 소개 문장 블록이 있었지만 성명서 블록이 무엇인지 이해하지 못했다는 것을 여전히 기억합니다. "코드 수집"은 또한 비슷한 기능을 갖춘 진술을 함께 구성하여 문장 블록을 형성 한 다음 빈 줄에 의해 다른 명령문과 분리되어야한다고 말합니다. 그러나 이것은 진정한 프로그래밍 언어의 진술 블록이 아니라 인간의 이해에 대한 진술 블록 일뿐입니다.
내 이해에 따르면, 프로그램 정의는 변수 범위와 동일한 관련 문장 세트의 모음이어야합니다. 제어 구조의 논리와 같은 {}로 둘러싸여 있어야합니다. 가장 중요한 점은 변수의 범위, 즉 동일한 로컬 변수를 사용할 수 있다면 프로그램 의미의 명세서 블록입니다. 예를 살펴 보겠습니다.
@override public boolean onoptionsitemselected (menuitem 항목) {switch (item.getitemid ()) {case menu_goto_fileant : 의도 i = new intent (); I.SetClass (this, fileAntactivity.class); startActivity (i); 부서지다; CASE MENO_TEST_LINEARLAYOUT : I.SetClass (this, linearLayoutTest.class); startActivity (i); 부서지다; 기본값 : 브레이크; } true를 반환합니다. } 두 번째 사례 문의 경우, 이전 경우에 정의 된 변수를 여전히 사용할 수 있으므로 전체 switch () {}는 문 블록입니다.
그러나 각 사례 문에 명령문 블록 플래그를 추가하면 다릅니다.
@override public boolean onoptionsitemselected (menuitem item) {switch (item.getitemid ()) {case menu_goto_fileant : {의도 i = new intent (); I.SetClass (this, fileAntactivity.class); startActivity (i); 부서지다; } case menu_test_linearlayout : {의도 i = new intent (); I.SetClass (this, linearLayoutTest.class); startActivity (i); 부서지다; } 기본값 : 중단; } true를 반환합니다. } {} 추가는 두 개의 사례 문을 분리하고 두 개의 문장 블록을 양식합니다. 그들은 자신의 가변 범위를 가지고 있으며 서로 영향을 미치지 않습니다. 그들이 같은 이름을 사용하더라도 다시 정의하는 것은 중요하지 않습니다.
이것을 설명하는 목적은 가능한 많은 {}를 사용하여 실제 진술 블록을 형성하는 것입니다. 가장 큰 장점은 가변 범위를 형성하고 변수의 범위가 너무 커져서 가독성을 향상시키고 오류 가능성을 줄일 수 있다는 것입니다.
읽어 주셔서 감사합니다. 도움이되기를 바랍니다. 이 사이트를 지원 해주셔서 감사합니다!