前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >每日一题(18)解析与暂别

每日一题(18)解析与暂别

作者头像
KEN DO EVERTHING
发布2019-01-17 16:11:41
2920
发布2019-01-17 16:11:41
举报
文章被收录于专栏:KEN DO EVERTHINGKEN DO EVERTHING

上题回顾与解析

输出什么?

代码语言:javascript
复制
public class Question18 {
    public static void main(String[] args){
        String str = new String("test");
        System.out.print(str.toString());
    }
}

class String {
    private final java.lang.String str;

    String(java.lang.String str){
        this.str = str;
    }

    @Override
   public java.lang.String toString(){
       return str;
   }
}
//out
Exception in thread "main" java.lang.NosuchMethodError: main

解析:看起来应该打印"test",但结果是报错了,提示找不到main方法,main方法也没有写错。注意到了没,代码里String字符串类重用了java.lang.String的名称,导致了main方法接收参数时用的是我们所创建的String类,所以找不到mian方法。 本题教训:避免重用类名,尤其是java平台类的类名。

本系列的题是从[JAVA解惑]一书中挑选,大家可以去瞧瞧,不管是对初级还是高级程序员都有很大用处。

「每日一题」系列暂时先告一段落,因为题穷了。

敬请关注其他系列文章,依然每日更新哈~

坚持日更:3天

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-12-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 java从心 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档