一亩三分地论坛

 找回密码
 获取更多干货,去instant注册!

扫码关注一亩三分地公众号
查看: 918|回复: 15
收起左侧

[其他] 學過java的幫忙看看吧,head first java里的小问题

[复制链接] |试试Instant~ |关注本帖
TonyJang 发表于 2014-6-29 11:48:08 | 显示全部楼层 |阅读模式

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看,没有帐号?获取更多干货,去instant注册!

x
第二行還少個 “}” 吧


QQ截图20140629113527.png


Linzertorte 发表于 2014-6-30 03:53:05 | 显示全部楼层
TonyJang 发表于 2014-6-29 19:29
main不能定义在类里吧

This is JAVA... Every methods must be in a class.
回复 支持 1 反对 0

使用道具 举报

readman 发表于 2014-6-29 12:12:07 | 显示全部楼层
跑下就知道了?
回复 支持 反对

使用道具 举报

阿兰阿兰 发表于 2014-6-29 12:20:53 | 显示全部楼层
没有少呀,最后三个大括号分别是由上到下对应while()语句;void main函数和class。
楼主的第二行是指的什么?
回复 支持 反对

使用道具 举报

sqzhang17 发表于 2014-6-29 13:00:07 | 显示全部楼层
lz说的第二行是哪一行啊?
应该是没有少~总共有3个大的block~
1 -->> class Hobbits 的block~~开始于第一行的“{”,结束与最后一行的“}”
2 -->> main函数的block~~开始与第三行的“{”,结束与倒数第二行的“}”
3 -->> while循环的block~~开始于第六行的“{”,结束与倒数第三行的“}”

在while循环中,存在着两个block~都是if判断语句~一种情况是判断z是否等于1(此判断开始于第10行,结束在第12行),另一种情况是判断z是否等于2(此判断开始与第13行,结束再第15行)~~

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

 楼主| TonyJang 发表于 2014-6-29 19:29:03 | 显示全部楼层
阿兰阿兰 发表于 2014-6-29 12:20
没有少呀,最后三个大括号分别是由上到下对应while()语句;void main函数和class。
楼主的第二行是指的 ...

main不能定义在类里吧
回复 支持 反对

使用道具 举报

阿兰阿兰 发表于 2014-6-29 20:27:37 | 显示全部楼层
TonyJang 发表于 2014-6-29 19:29
main不能定义在类里吧

当然是可以的啊。你可以看看HFjava里的所有程序,main函数都是定义在类里边的。Java本来就是基于类的(个人理解,可能表达不太准确)。
如果还是纠结的话,你还可以打开eclipse,点击新建--类,在对话框中有一个可以勾选的选项“public static void mian()”,如果勾选了那么系统会自己给你在新建的类里边自动生成一个main函数。
综上,是可以的。

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

麻倉枼 发表于 2014-6-30 02:07:42 | 显示全部楼层
最简单的方法就是一层一层地copy & paste 一遍,

class Hobbit{
    public static void main(){
         while{
             if{}
             if{}
          }
    }
}
回复 支持 反对

使用道具 举报

donnice 发表于 2014-6-30 10:09:55 | 显示全部楼层
TonyJang 发表于 2014-6-29 19:29
main不能定义在类里吧

我懂你的意思,加个public吧
回复 支持 反对

使用道具 举报

guchang 发表于 2014-6-30 11:55:53 | 显示全部楼层
你在eclipse里新建一个类文件,选加上main函数,你看看这个生成的代码里怎么写的。main一定是在class里的。。。
回复 支持 反对

使用道具 举报

monsoonle 发表于 2014-7-5 01:29:12 | 显示全部楼层
没有少啊...hobbits里只有3个对象, z从-1开始, 每次循环+1.  第四次循环z=2 不符合Z < 2 跳出循环, 这里循环的意义就是对3个对象做操作, ..这么细应该足够了吧
回复 支持 反对

使用道具 举报

tbu 发表于 2014-7-5 05:32:43 | 显示全部楼层
我明白LZ的意思,LS的都没仔细看这段代码, 我感觉确实是有问题的

main确实应该定义在class里,但不能定义在这个Hobbit class里, 因为main里面本身有一句Hobbits[] h = new Hobbits[3]
main的作用只是start an application, jvm会找main开始执行, 所以不可能每个object里都有一个main,这样compiler肯定会报错

所以正确的结构应该是:
class Hobbits{
//states and methods, but not main
}
class TestHobbits{
   public static void main(){
      Hobbits[] h = new Hobbits[3];
      //other codes
}
}
回复 支持 反对

使用道具 举报

luzhuzeng 发表于 2014-7-5 23:48:17 | 显示全部楼层
TonyJang 发表于 2014-6-29 05:29
main不能定义在类里吧

main永远在类里好不....(理解错你的意思了可能,抱歉啊)
回复 支持 反对

使用道具 举报

本版积分规则

请点这里访问我们的新网站:一亩三分地Instant.

Instant搜索更强大,不扣积分,内容组织的更好更整洁!目前仍在beta版本,努力完善中!反馈请点这里

关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明 ( 沪ICP备11015994号 )

custom counter

GMT+8, 2016-12-6 09:07

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

快速回复 返回顶部 返回列表