Java 문 블록 사용에 대한 자세한 설명과 예
자바 명령문 블록
처음 C, C++, Java 프로그래밍 책을 읽었을 때 명령문 블록이 소개되었던 기억이 납니다. 그 당시에는 명령문 블록이 무엇인지조차 이해하지 못했습니다. "코드 백과사전"에서도 유사한 기능을 가진 명령문을 함께 구성하여 명령문 블록을 구성한 다음 이를 빈 줄로 다른 명령문 블록과 분리하는 방법에 대해 설명합니다. 그러나 이것은 진정한 프로그래밍 언어 의미의 명령문 블록이 아니라 인간 이해의 명령문 블록일 뿐입니다.
제가 이해한 바에 따르면, 제어 논리와 같이 동일한 변수 범위를 갖는 관련 명령문의 집합이어야 하는 것 같습니다. 가장 중요한 점은 변수 범위라고 생각합니다. 즉, 동일한 지역 변수를 사용할 수 있다면 프로그램 의미에서는 명령문 블록입니다. 예를 살펴보겠습니다.
@Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case MENU_GOTO_FILEANT: Intent i = new Intent(); i.setClass(this, FileAntActivity.class); startActivity(i); break; case MENU_TEST_LINEARLAYOUT: i.setClass(this, LinearLayoutTest.class); startActivity(i); break; default: break; } return true; }
두 번째 Case 문의 경우 이전 Case에서 정의한 변수를 계속 사용할 수 있으므로 전체 switch() {}는 명령문 블록입니다.
그러나 각 Case 문에 문 블록 플래그를 추가하면 달라집니다.
@Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case MENU_GOTO_FILEANT: { Intent i = new Intent(); i.setClass(this, FileAntActivity.class); startActivity(i); break; } case MENU_TEST_LINEARLAYOUT: { Intent i = new Intent(); i.setClass(this, LinearLayoutTest.class); startActivity(i); break; } default: break; } return true; }
를 { }로 구분합니다. 두 개의 Case 문은 두 개의 명령문 블록을 형성하며, 자체적인 변수 범위를 가지며 서로 영향을 주지 않습니다. 이름이 같거나 다시 정의되어도 상관 없습니다.
이것을 설명하는 목적은 {}를 최대한 사용하여 실제 명령문 블록을 형성하는 것입니다. 가장 큰 장점은 변수 범위를 형성할 수 있고 변수의 범위도 너무 커지지 않는다는 것입니다. 이렇게 하면 가독성이 향상되고 오류 가능성이 줄어듭니다.
읽어주셔서 감사합니다. 도움이 되기를 바랍니다. 이 사이트를 지원해 주셔서 감사합니다!
자바 구문 블록 사용에 대한 자세한 설명과 예시는 PHP 중국어 홈페이지를 참고해주세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











인터페이스 액세스 권한을 제어하기 위해 OAuth2.0의 Access_token을 사용하는 방법은 무엇입니까? OAUTH2.0의 적용에서 ...

백엔드 개발에서 계층 구조에 대해 논의합니다. 백엔드 개발에서 계층 구조는 일반적으로 컨트롤러, 서비스 및 DAO 3 계층을 포함한 일반적인 설계 패턴입니다.

Java 원격 디버깅의 지속적인 획득에 대한 질문과 답변 원격 디버깅에 Java를 사용할 때 많은 개발자가 어려운 현상을 만날 수 있습니다. 그것...

초보자를위한 Java 프로젝트 관리 도구 선택과 혼동됩니다. 백엔드 개발을 배우기 시작한 사람들에게는 올바른 프로젝트 관리 도구를 선택하는 것이 중요합니다 ...

분산 시스템 분산 트랜잭션 처리에서 궁극적 인 일관성의 적용을 탐색하는 것은 분산 시스템 아키텍처에서 항상 문제가되었습니다. 문제를 해결하려면 ...

원사를 통해 pyflink 작업을 제출하려고 할 때 원사에 pyflink 작업을 제출할 때 Python 스크립트를 찾을 수없는 이유를 분석하면 만날 수 있습니다.

개발 프로세스 중에 Java의 엔티티 클래스 주석의 매개 변수를 동적으로 구성하는 방법 개발 프로세스 중에는 종종 다른 환경에 따라 주석 매개 변수를 동적으로 구성해야합니다 ...

Tomcat이 Spring-Web 모듈을로드 할 때 SPI 메커니즘의 클래스 로딩 동작 분석. Tomcat은 Spring-Web 모듈을로드 할 때 Spring-Web에서 제공 한 서블을 발견하고 사용하는 데 사용됩니다 ...
