蛋疼的疑问...求解!!! 脑子里突然冒出个蛋疼的疑问: 为什么循环语句,控制语句(if else、while、for)之类的只能用在方法内。也没发现谁说过不能用啊,难道这是个不成文的规定,求解... 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我知道类的成员只能是属性和方法 或者静态块~我不知道class中可以直接写其他代码块???崩溃蛋疼~ 网页编译成java文件后还是在方法中... 那些语句写在方法以外起什么作用咯?&……*…… 呵呵lz的问题很有意思,貌似很简单,倒是不好回答。一个java类可以分成几个部分吧,变量/常量,方法,静态代码块(当然也可能会有内部类,这个就递归下去了)变量/常量声明的地方是用不上if else的吧。这样解释不知道是否合理:) Java的爸爸说BasicForStatement: for ( ForInitopt ; Expressionopt ; ForUpdateopt ) Statement 上述语法是下述语法的缩写: BasicForStatement: for ( ; Expressionopt ; ForUpdateopt ) Statement for ( ForInit ; Expressionopt ; ForUpdateopt ) Statement 上述语法是下述语法的缩写: BasicForStatement: for ( ; ; ForUpdateopt ) Statement for ( ; Expressionopt ; ForUpdateopt ) Statement for ( ForInit ; ; ForUpdateopt ) Statement for (ForInit ; Expression ; ForUpdateopt ) Statement 上述语法又是下述语法的缩写: BasicForStatement: for ( ; ; ) Statement for ( ; ; ForUpdate ) Statement for ( ; Expression ; ) Statement for ( ; Expression ; ForUpdate ) Statement for ( ForInit ; ; ) Statement for (ForInit ; ; ForUpdate ) Statement for ( ForInit ; Expression ; ) Statement for ( ForInit ; Expression ; ForUpdate ) Statement《Java编程规范》 程序从main函数开始执行,然后调用其他成员方法和成员变量,既然成员变量可以声明并赋值,为什么不能提前做一些逻辑上的判断...这也只是想想,探讨下,没什么无聊不无聊的,好比你天天想着你的梦想,目前不是还是过着现在的生活吗?呵呵... 简单一点,一个java类只允许有两种东西:属性和方法。至于逻辑运算语句之类的东西,都是用于实现这些方法时调用的工具。PS:如果将语句直接写在java类中,能表达什么意思,什么时候执行? for的用法我了解...java爸爸有没有说用在哪地方啊? 顶,是自找的,也不看下java的内存中的放置,再说谁又告诉你这些只能在方法中用的,块中不能用吗?唉 就是想知道为什么,JVM原理研究不透啊...平时都是那么用的,突然脑袋想了一下而已,能说的说下,不能说的继续那么用... C,c++中可以用,就是写在预编译中!我想Java中也可以用吧!目前我还不知道在那里用!应该非常nb的人知道! 楼主说的有道理!我顶程序从main函数开始执行,然后调用其他成员方法和成员变量,既然成员变量可以声明并赋值,为什么不能提前做一些逻辑上的判断?? 可惜java中没有提供这么一个机制啊,C里面是有的 不过还不够强大,只是些预处理 #if #elif #else #ifndef 等等也许后面可以出现写程序可以通过自己改自己执行块(程序正文段)的东西操作系统已经实现了部分功能(从一个进程侵入)可惜还不够强大到可以在自己程序里面根据程序的执行,在执行时改二进制代码的功能,并且次功能不是编译好由汇编控制,而是在编写源码时决定。若干年以后“动态”需求到一定的阶段会出现此语言 java 所有的语句都要放在方法内,或者静态块中,类的成员初始化则必须是放在内中,并且必须放在 = 号后号因为java的语句块如果不放在方法体内,则不会被执行到,不放在方法内部的语句是没有意义 的 if else for 等控制语句都属于执行语句。而方法体外的部分不是执行部分,是声明部分,只能有声明语句。执行语句只能出现在执行部分中,执行部分包括成员块,静态块,方法体等等。比如System.out.println()是输出语句,并没有声明任何变量,所以属于执行语句,那么这句话就不能出现在声明部分。 嘿嘿 解释的不错 Thank you! 字符串过滤问题 哪位大牛给解决一下啊 关于多文件上传顺序的问题 (IO) 编译出错:对于常量池来说,字符串表示的UTF过长,那我想知道,JVM的常量池到底有多大? 小技巧共享(正则表达式) mysql5.0拒绝访问??? Java程序是不是不能运行在DOS下?属于32位的吗? 初学者关于J2SDK1.4.2_04的安装 SWing编程中遇到JOpitionPane一闪而过的错误 哪个版本的JDK适用于FreeBSD? [Good News]随着IBM WSAD 5.1的推出,eclipse 2.1.x的多语言包也有了! 排列组合问题 简单程序 求大虾帮忙。
我不知道class中可以直接写其他代码块???
崩溃蛋疼~
lz的问题很有意思,貌似很简单,倒是不好回答。
一个java类可以分成几个部分吧,变量/常量,方法,静态代码块(当然也可能会有内部类,这个就递归下去了)
变量/常量声明的地方是用不上if else的吧。
这样解释不知道是否合理:)
BasicForStatement:
for ( ForInitopt ; Expressionopt ; ForUpdateopt ) Statement
上述语法是下述语法的缩写:
BasicForStatement:
for ( ; Expressionopt ; ForUpdateopt ) Statement
for ( ForInit ; Expressionopt ; ForUpdateopt ) Statement
上述语法是下述语法的缩写:
BasicForStatement:
for ( ; ; ForUpdateopt ) Statement
for ( ; Expressionopt ; ForUpdateopt ) Statement
for ( ForInit ; ; ForUpdateopt ) Statement
for (ForInit ; Expression ; ForUpdateopt ) Statement
上述语法又是下述语法的缩写:
BasicForStatement:
for ( ; ; ) Statement
for ( ; ; ForUpdate ) Statement
for ( ; Expression ; ) Statement
for ( ; Expression ; ForUpdate ) Statement
for ( ForInit ; ; ) Statement
for (ForInit ; ; ForUpdate ) Statement
for ( ForInit ; Expression ; ) Statement
for ( ForInit ; Expression ; ForUpdate ) Statement
《Java编程规范》
至于逻辑运算语句之类的东西,都是用于实现这些方法时调用的工具。
PS:如果将语句直接写在java类中,能表达什么意思,什么时候执行?
程序从main函数开始执行,然后调用其他成员方法和成员变量,既然成员变量可以声明并赋值,为什么不能提前做一些逻辑上的判断??
可惜java中没有提供这么一个机制啊,C里面是有的 不过还不够强大,只是些预处理 #if #elif #else #ifndef 等等
也许后面可以出现写程序可以通过自己改自己执行块(程序正文段)的东西操作系统已经实现了部分功能(从一个进程侵入)可惜还不够强大到可以在自己程序里面根据程序的执行,在执行时改二进制代码的功能,并且次功能不是编译好由汇编控制,而是在编写源码时决定。
若干年以后“动态”需求到一定的阶段会出现此语言