A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 林铁柱 黑马帝   /  2011-12-22 09:05  /  2462 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

        int x=123;
main(x);
哥们,你这太雷人了,你这main算咋回事嘛,写成main(1)我想大家也能看懂,哈哈。
回复 使用道具 举报
本帖最后由 林铁柱 于 2011-12-22 09:29 编辑

class MainDemo
{
        public static void main(String[] args)
{
        System.out.println(“Hello world!”);
}
public static void main(int x)   
{
        System.out.println(x);
}
int x=123;
main(x);
或者MainDemo.main(x);
}

編譯時出現兩處錯誤:
1、方法聲明無效、需要返回類型
2、需要標誌符

輸出x時爲什麽編譯不通過?知道的幫忙解釋下。。。

评分

参与人数 1技术分 +1 收起 理由
杨强 + 1

查看全部评分

7 个回复

倒序浏览
class ceshi
{
        public static void main(String[] args)
{
        int x=123;
main(x);
        System.out.println("Hello world!");
        
}
public static void main(int x)   
{
        System.out.println(x);
}


}
这样试试

评分

参与人数 1技术分 +1 收起 理由
王德云 + 1

查看全部评分

回复 使用道具 举报
class MainDemo
{
        public static void main(String[] args)
{
        System.out.println(“Hello world!”);
}
public static void main(int x)   
{
        System.out.println(x);
}
int x=123;
main(x);
}
你这个main(x)写在外边算什么呢?你这又不是函数调用不能这样写,你应该把方法写在主函数里边。

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
先给你个正确的:
class MainDemo
{
        public static void main(String[] args)
        {
                int x=123;
        System.out.println("Hello World!");
                main(x);
        }
        public static void main(int x)   
        {
               
                System.out.println(x);
        }
}


再说问题:
1.你的函数public static void main(int x),这里定义为main了,一般我们不建议用main,因为主函数的入口是public static void main(String[] args)
这样很容易混淆,我这里没有做改动,是为了尽量保持少原样。
2.每个函数的作用范围仅限于紧跟其后的{}内,你的x定义在函数外部,并且你的函数都定义为static的了,静态函数是不能访问外部数据的。
3.对你这个程序,你要调用函数,main(x);应该写在主函数内部,也就是public static void main(String[] args){}的大括号里。

评分

参与人数 1技术分 +1 收起 理由
王德云 + 1

查看全部评分

回复 使用道具 举报
胡家福 发表于 2011-12-22 09:21
先给你个正确的:
class MainDemo
{

我承認我有點傻了,怎麼犯這種低級趣味的錯誤呢,畢竟主函數才是程序的入口啊~~~~~~~~:Q:Q:Q
回复 使用道具 举报
胡家福 黑马帝 2011-12-22 10:39:34
7#
林铁柱 发表于 2011-12-22 09:28
我承認我有點傻了,怎麼犯這種低級趣味的錯誤呢,畢竟主函數才是程序的入口啊~~~~~~~~ ...

没关系,刚开始学都这样,慢慢就好了~~:)
回复 使用道具 举报
同一个类中定义两个主函数main(),肯定会出错啊,main是个特殊函数名,代表主函数,代表JVM的入口啊,同一个类中只能有一个main(),第二个函数可以把main换成别的!这样就靠普了!

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马