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语句分隔了开来,形成了二个语句块,它们有各自的变量作用域,互不影响,即使用名字相同,或再次定义也无妨。
说明这些的目的就在于,要尽可能多的使用{}以形成真正的语句块,最大的好处在于它能形成变量作用域,避免变量的作用域过大,即提高了可读性,也减少了出错的可能。
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
相关文章:
rsync同步时出现rsync: failed to set times on “xxxx”: Operation not permitted
,网站推广常用方法?
网站建设制作需要多少钱费用,自己做一个网站要多少钱,模板一般多少钱?
Dapper的Execute方法的返回值是什么意思 Dapper Execute返回值详解
,想在网上投简历,哪几个网站比较好?
C++时间戳转换成日期时间的步骤和示例代码
临沂网站制作公司有哪些,临沂第四中学官网?
无锡营销型网站制作公司,无锡网选车牌流程?
如何在局域网内绑定自建网站域名?
营销式网站制作方案,销售哪个网站招聘效果最好?
常州自助建站费用包含哪些项目?
香港服务器网站卡顿?如何解决网络延迟与负载问题?
建站之星伪静态规则如何设置?
建站主机无法访问?如何排查域名与服务器问题
如何快速搭建高效香港服务器网站?
nginx修改上传文件大小限制的方法
c++怎么实现高并发下的无锁队列_c++ std::atomic原子变量与CAS操作【详解】
如何在阿里云通过域名搭建网站?
制作网站建设的公司有哪些,网站建设比较好的公司都有哪些?
如何在IIS中新建站点并配置端口与IP地址?
网站制作公司广州有几家,广州尚艺美发学校网站是多少?
如何通过二级域名建站提升品牌影响力?
C++如何将C风格字符串(char*)转换为std::string?(代码示例)
如何选择长沙网站建站模板?H5响应式与品牌定制哪个更优?
成都网站制作价格表,现在成都广电的单独网络宽带有多少的,资费是什么情况呢?
武汉网站制作费用多少,在武汉武昌,建面100平方左右的房子,想装暖气片,费用大概是多少啊?
JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)
官网网站制作腾讯审核要多久,联想路由器newifi官网
网站制作公司,橙子建站是合法的吗?
如何在阿里云购买域名并搭建网站?
如何选择CMS系统实现快速建站与SEO优化?
宝塔新建站点报错如何解决?
如何生成腾讯云建站专用兑换码?
金*站制作公司有哪些,金华教育集团官网?
如何选择高效稳定的ISP建站解决方案?
大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?
,怎么在广州志愿者网站注册?
早安海报制作网站推荐大全,企业早安海报怎么每天更换?
天津个人网站制作公司,天津网约车驾驶员从业资格证官网?
公司网站设计制作厂家,怎么创建自己的一个网站?
如何基于云服务器快速搭建网站及云盘系统?
用v-html解决Vue.js渲染中html标签不被解析的问题
如何在新浪SAE免费搭建个人博客?
建站主机SSH密钥生成步骤及常见问题解答?
建站主机空间推荐 高性价比配置与快速部署方案解析
如何快速搭建二级域名独立网站?
网页设计网站制作软件,microsoft office哪个可以创建网页?
如何选择高性价比服务器搭建个人网站?
宝塔Windows建站如何避免显示默认IIS页面?
长沙做网站要多少钱,长沙国安网络怎么样?
*请认真填写需求信息,我们会在24小时内与您取得联系。