专栏名称: Java知音
专注于Java,推送技术文章,热门开源项目等。致力打造一个有实用,有情怀的Java技术公众号!
目录
相关文章推荐
今天看啥  ›  专栏  ›  Java知音

面试官问我:自己写String类,包名也是java.lang,这个类能编译运行成功吗?

Java知音  · 公众号  ·  · 2025-01-07 10:05
    

文章预览

之前某次面试,我说自己对Java比较熟,面试官问了我一个问题:假设你自己写一个String类,包名也是 java.lang ,代码里使用String的时候,这个String类能编译成功吗?能运行成功吗? 好了,我当时又是一脸懵逼o((⊙﹏⊙))o,因为我只是看了些Java的面试题目,而且并没有涉及类加载方面的内容(ps:我是怎么敢说我对Java比较熟的)。 结论 先说结论: 能编译成功,但是运行会报错。因为加载String的时候根据双亲委派机制会默认加载jdk里的String。 在自己写的String类中写main方法并运行,会报错找不到main方法。 public   class   String   {      public   int   print ( int  a)   {          int  b = a;          return  b;     }      public   static   void   main (String[] args)   {          new  String().print( 1 );     } } 上述代码运行报错如下: 错误: 在类 java.la ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览