为什么Java没有块范围的变量声明?
发布时间:2020-12-14 05:31:54 所属栏目:Java 来源:网络整理
导读:以下方法不起作用,因为内部块在外部块中声明与一个名称相同的变量.显然,变量属于它们被声明的方法或类,而不是它们被声明的块,所以我因此不能写出一个短暂的小的临时块进行调试,这恰好将外部范围中的变量推入阴影只是一会儿: void methodName() { int i = 7;
以下方法不起作用,因为内部块在外部块中声明与一个名称相同的变量.显然,变量属于它们被声明的方法或类,而不是它们被声明的块,所以我因此不能写出一个短暂的小的临时块进行调试,这恰好将外部范围中的变量推入阴影只是一会儿:
void methodName() { int i = 7; for (int j = 0; j < 10; j++) { int i = j * 2; } } 我使用过的几乎所有块样的语言都支持这一点,包括我在学校写了口译和编译器的小型语言. Perl可以做到这一点,如Scheme,甚至C.甚至PL / SQL都支持这个! 这个Java设计决策的理由是什么? 编辑:有人指出,Java确实有块范围.我问的概念是什么名字?我希望能从这些语言设计课中记住更多的东西. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- java – 查找人与人之间交易次数最少的算法
- Java执行流程 – 重写方法首先比构造函数执行
- vagrant 虚拟机搭建 以及virtualbox 安装 配置
- 如何在其他处理选项卡中使用公共类frome .java文件?
- 在Java中使用通配符和在抽象方法中声明泛型类型之间的区别
- java – Eclipse IDE内容辅助自定义XML
- java – 依赖注入如何促进可测试性
- user-interface – Javafx中的ProgressBar不会在onAction块
- java – 在循环中使用try-finally块
- 异常:android.os.NetworkOnMainThreadException