昨天面试了15名大连某刚从三本升入二本院校的学生的题目,结果让我诧异,基本上都没答对。
他们还明明是相关专业的学生啊!哎!部分题目如下:
1、告知输出结果true   or   false                String s1 = "abc";
String s2 = "abc";
System.out.println("s1 == s2:"+(s1==s2));
System.out.println("s1.equals(s2):"+(s1.equals(s2)));
-----------------------------------------------------------
String s3 = new String("abc");
String s4 = new String("abc");
System.out.println("s3 == s4:"+(s3==s4));
System.out.println("s3.equals(s4):"+(s3.equals(s4)));
-----------------------------------------------------------
System.out.println("s1 == s3:"+(s1==s3));
System.out.println("s1.equals(s3):"+(s1.equals(s3)));
                -----------------------------------------------------------
2、sleep() 方法的作用是什么?yield() 方法的作用是什么?有什么区别?
3、集合对象中存放的是引用数据类型的元素还是基本类型的元素?数组呢?
4、构造方法是否可以被重写?被重载?被继承?
.......
都是如此基本的技术点,可惜了所谓的“大学生”们啊!这应届生不太好招聘啊!
当然,相信一定有不错的。为什么不去培训培训?

解决方案 »

  1.   

    String 那个,笔试看看还行,面试实在太没意思了
      

  2.   

    String那个题,我是用笔记本放投影显示给他们看的。要是口述这个题目,
    我也是得费不少劲!呵呵呵
      

  3.   

    现在本科教育你以为能到什么程度,他们知道叫java就不错了。不要抱太大的希望,大学生普遍是能玩就玩,真正学习的真没几个人
      

  4.   

    1.System.out.println("s1 == s2:"+(s1==s2));
    System.out.println("s1.equals(s2):"+(s1.equals(s2)));
    -----------------------------------------------------------
    System.out.println("s1 == s3:"+(s1==s3));
    System.out.println("s1.equals(s3):"+(s1.equals(s3)));这2个是答对了的。
    2.yield()这个方法根本就没用过
    3
    4.这个还行,基本没问题。
      

  5.   

    培训更完蛋 都是dota人才,,,
      

  6.   

    不算难吧,我才学JAVA半学期,不过几乎看完了《java核心技术卷I》,感觉受益很大
    建议大家看这本书
      

  7.   

    另外一个帖子已经说明过了 请不要以一概全,
    你只是去了一个三本学院,只是面了15个人而已,你就说这一届的大学生不行
    我直接说 我是本届大四的 一样能找到大公司去做, 这些面试题随口答,目前正在学习SSH,SSH确实不熟
    我的同学都是直接去笔试百度 腾讯 淘宝这些 而且很多拿到offer
    我也不想再争论什么 只是想让LZ了解下 不是所有的大学生都是天天在学校玩的
      

  8.   

    尝试回答一下,请多指教 :)
    1、告知输出结果true or false   String s1 = "abc";
     String s2 = "abc"; 
     System.out.println("s1 == s2:"+(s1==s2)); // false. 用==号比较,只比较位上的bit是否相等;
    //不同的引用变量所占的位必然不同。

     System.out.println("s1.equals(s2):"+(s1.equals(s2)));//false.如果equal()不重写,
    //也将只用==号来比较,结果还是不相等。

     -----------------------------------------------------------
     String s3 = new String("abc");
     String s4 = new String("abc");
     System.out.println("s3 == s4:"+(s3==s4));//这里应该与上面完全一样。
    //只不过这里用了new来新建对象。应该都是false。下面两个也是false。

     System.out.println("s3.equals(s4):"+(s3.equals(s4)));
     -----------------------------------------------------------
     System.out.println("s1 == s3:"+(s1==s3));
     System.out.println("s1.equals(s3):"+(s1.equals(s3)));
       -----------------------------------------------------------
    2、sleep() 方法的作用是什么?yield() 方法的作用是什么?有什么区别?sleep()是静态方法,调用它,将使当前运行的线程停止运行指定长度的时间。
    yield()也是静态方法。作用是将运行中的线程转为可运行状态,而不是进入block、sleep、waiting状态。与sleep()的不同之处在于:即使调用了yield(),当前线程也可能被再次选中运行,被选中的几率与其它线程相同。3、集合对象中存放的是引用数据类型的元素还是基本类型的元素?数组呢?集合中存放的都是引用类型的数据。数组中是基本类型。4、构造方法是否可以被重写?被重载?被继承?
    构造方法不能被重写,不能被继承,但是可以,并且经常被重载。非常感谢。
      

  9.   

    本人自认为写过两天Java,还没毕业,LZ那个题目要求着实有些高,但严格讲又合情合理,上次阿里巴巴问我两个题目:Oracle和SQLServer数据库分页的异同,Spring的优点……不知LZ的公司如何,可否透露一二
      

  10.   

    如果面试题中出现 String, new String 之类的问题,我认为这样的公司不去也罢!
      

  11.   

    本来不想说啥的,只是看到第二题,真的是忍不住了,每个人都会说太简单了吧
    可以这样说,无论是开过Java课程还是自学Java的人,当初学习到这个知识点的时候肯定当时都记得那个熟啊
    但是说句实话,有什么意义吗?学过之后有多少人用过?基本用不着最后肯定会遗忘掉
    对于在面试之前看过一眼这个知识点的人来说肯定对答如流,但是有能说明什么呢?
    如也不想想应届毕业生在学了这个知识点之后有多少真的用到这个知识了?
    第一题和第四题倒是,如果答不出来的就回去好好面壁去吧还有楼主说的培训,北大青鸟那种类型的么,也不看看都学的是些啥,我我有个同学就在那里学了四年,现在什么都不会,你说他自己不好好学吧,也是!那另外一个同学呢,也是在那里学的,现在也只会点拖拖标签什么的,拿这几个题给他,我敢保证他一题也不会!
      

  12.   

    true true false true false true
        是这样子的吧!sleep让线程睡眠指定的时间!单位是毫秒!
      

  13.   

    第一题实在是问的没有水准!还不如问下String,StringBuffer,StringBuilder了!
      

  14.   

    yield() 方法没用过 话说这些题考本科毕业的也太简单了 居然答不出来 我在想这些本科生基础都不懂 为什么还想着来搞开发啊
      

  15.   

    我对LZ的两篇帖子保持高度关注中。
    话说LS们对第一题的评论已经够精彩了、我就不多说什么了。
    从LZ倒数第三行中可以推理出LZ明显没上过大学。
    不知道是眼红还是嫉世愤俗、反正就是鄙视大学生。
    我承认现在大学生的含金量不高。并且很多都是混过来的。
    但是难道你可以否认经过系统的教育之后的底蕴比你当年差么?
    楼主你能面对我的回复的时候迅速并且不查资料的写出JVM的全称么?
    如果你不知道的话、那么我告诉你。是Java Virtual Machine
    现在我告诉你全称是什么了、您能用标准的读出来它么?
    所以。这就是大学生被您鄙视的原因。另外您说培训。ORZ。
    培训的根本意义和他的本质或者他的目的我们就不去讨论了。
    您肯定处在小公司并且身居要职、养尊处优。但是不得不说您鼠目寸光、犹如井底之蛙。
    为什么学历是面试的敲门砖?因为经过系统教育才会有系统的思维以及创新能力。
    这样才会在现有能力的基础上不断快速的发展和进步。
    比如说有A、B两种股票。A股股价稍高、但是没有风投公司看好。
    B股股价稍低、但是背后有很多风投及银行的推动。您会买那只股票呢?
    再一点。为什么说您在小公司。
    因为小公司是没有企业文化的。尽管很多小公司对外对内都宣称自己有企业文化。
    但是他们就是没有。归根结底是因为他们没有传承。
    我们说中华民族的民族文化是5000年的历史传承。所以文化是需要传承的。
    小公司、希望以最小的代价换来最大的收益。
    你们希望可以花最少的钱、招来现阶段水平较高的人。然后期待加班。最后当事人离职。
    就这样的恶性循环如何去期待传承。如何去期待企业文化。如上。我的话说完了。
    最后、送君一句话:“你站在山顶上看山下的人,之所以觉得他们渺小,不是因为你的身高,只是他们还没到山顶。”
      

  16.   

    说实话,楼主你这几个题出的一点都不好。这种题完全就是经验,我记得以前看过一篇文章专门就是说这个的,关于String池,关于equal()方法重写什么的。如果你没看过这种类型的文章,你肯定会错。如果多看几遍,记住了,当然就没有任何难度可言。况且这种东西现实中不常用。
    你还不如考几个算法,或者问一些原理性的东西,比如多线程的作用,举例说明。或者问一些操作系统,网络相关的知识,比这个要好。
      

  17.   

    1 不逛CSDN的 或者 之前没有做过类似题目的  真没几个人可以全对
    2 本人也没用过yield()34 学过Java用过一点的话应该还是能做出来
    LS某位说了“不管学校是什么,总有优秀的学生。” 这点我很认同但是去三本院校招聘就不要有什么太高的期望我不夸张的说,即便985相关专业的学生,能4题全对的也不会超过20%,甚至更低!
      

  18.   

    s1==s2:true          //java编译时优化了字符串,指向同一个对象
    s1.equals(s2):true  //java优化了字符串
    s3==s4:false   //产生了 新对象
    s3.equals(s4):false
    s1==s3:false
    s1.equals(s3):false
      

  19.   

    做错了  
    equals()重写了 比较的是内容 
    true 
    true
    false
    true
    false
    true
      

  20.   

    俺基本都不会,会的也是以C++去类推,不知是否对错。
    俺大学的时候都是学C和C++。不过也有java的课。
      

  21.   

    加深了String的equals方法记忆,:-)
      

  22.   

    1、true true false true false true
    2、sleep()可以让当前运行线程休眠指定时间,yield()没怎么用过,要看书了
    3、集合内只能存放引用数据对象,数组既可存放基本类型数据也可存放引用类型数据。
    4、构造方法可以被重载,不能被继承和重写。
      

  23.   

    试了第一题的答案:1.7的jdk
    s1 == s2: true
    s1.equals(s2): true
    s3 == s4: false
    s3.equals(s4): true
    s1 == s3: false
    s1.equals(s3): true其实这些死的知识是次要的。完全考记忆的题真的不能说明什么问题。并且不同版本还可能不一样。到用到的时候,正的不行,倒一下也可以解决问题。
      

  24.   

    第一个问题:
    问的很没有水平
    既然是 String 对象,我们只需要知道其 equals 的结果是否会 true 就可以了
    至于其 == 的结果是否为 true 有什么意义呢?你去钻这种问题干什么?
    要不是经常在 CSDN 上看到这种类型的月经贴,我也不知道这个比较的结果是什么
    我们项目组里面,要是有人敢用 == 来比较 String 我直接上去就骂
    而且,我可以负责的告诉你
    我们公司软件部门的几十个同事,除了我这个天天泡 CSDN 的无聊人以外
    第一题估计都答不上来第二个问题:
    作为一个工作 6 年多
    软件专业本科毕业,
    专门从事 java C/S Swing 开发的技术人员
    我还真没怎么用过 yield() 
    我们的系统用了这么多年了,刚在所有的代码中搜索了一下
    使用 yield 的次数为:0第三个问题:
    明显的一个用二选一法则对考生进行误导的问题
    你既然问题 "是...还是...",那你的答案就应该为两者之一
    集合还好了,放不了基本类型
    那数组呢?基本类型和对象的引用都可以,你让人怎么回答?第四个问题:
    又见冗余型误导
    构造方法不可继承
    既然不可继承何谈重写?
    你对构造方法又问继承又问重写的就是在混淆考生的概念了
    我一向都认为这种死扣基本概念的做法没什么意义
    我们单位基本概念最好的某达人
    代码里面大量是自动生成的代码
    该注释的地方没注释,
    自己写的类该有的 API 没有
    代码结构混乱
    可读性极差能否成为一个好的程序员,
    最重要的还是:是否有优秀逻辑思维
      

  25.   

      up,一般面试有戏的公司,都是直接PM拿着你的简历问问题,那些拿一叠题目给你做的公司基本上都是回家等消息!
      

  26.   

    大学的java本来就不是主要课程,在我们学校大二下才开,而且是选修课。
    大学一般的计算机专业全名为《计算机科学与技术》,从计算机导论开始,数据结构,操作系统,数据库,网络,软件工程,java之类的应用。然后还有组层原理,数字逻辑,单片机之类偏硬件的。
    大学本身就跟专科的性质不一样,招应届生面试这些细节性问题,真不是本科生强项。
      

  27.   

    Lz你好,我就是你说的这个3本升2本的大连学校毕业的。这学校以前是3本院校,刚前两年被国家升为2本院校,就是原来招3本高考的高中生,现在招收2本线的了。我10年毕业,毕业前一年就为华信做代码工,现在在杭州一家做产品的软件公司工作。
    我做C++的,这些题目我部分能答上来。这种题目真的不能说明什么问题。招人用这种题目我真为母校喊冤。可能你招码农要的就是这种人,我就是受不了码农的工作跳的槽。介意lz以后多出些逻辑算法的题目,考察程序员的品质。逻辑算法题也不用死对答案,要考察应聘者的思路算法。这学校还是不错的,至少比很多学校对学生负责。课程比较结合市场。好的学生还是有很多的,当然差的也很多,希望lz好好招。
      

  28.   

    s1 == s2:true
    s1.equals(s2):true
    s3 == s4:false
    s3.equals(s4):true
    s1 == s3:false
    s1.equals(s3):trueequals比==要求宽
    内存的问题
      

  29.   

    #18楼 得分:0回复于:2011-10-12 19:35:06尝试回答一下,请多指教 :)
    1、告知输出结果true or false  String s1 = "abc";
     String s2 = "abc";  
     System.out.println("s1 == s2:"+(s1==s2)); // false. 用==号比较,只比较位上的bit是否相等;
    //不同的引用变量所占的位必然不同。
     System.out.println("s1.equals(s2):"+(s1.equals(s2)));//false.如果equal()不重写,
    //也将只用==号来比较,结果还是不相等。
     -----------------------------------------------------------
     String s3 = new String("abc");
     String s4 = new String("abc");
     System.out.println("s3 == s4:"+(s3==s4));//这里应该与上面完全一样。
    //只不过这里用了new来新建对象。应该都是false。下面两个也是false。
     System.out.println("s3.equals(s4):"+(s3.equals(s4)));
     -----------------------------------------------------------
     System.out.println("s1 == s3:"+(s1==s3));
     System.out.println("s1.equals(s3):"+(s1.equals(s3)));
     
    错误好多
      

  30.   

    哈哈 CSDN果断越来越烂了 这种帖子都能被称为 “昨天面试应届生的题目分享”
      

  31.   

    面试了15名大连某刚从三本升入二本院校的学生的题目,结果让我诧异,基本上都没答对。
    他们还明明是相关专业的学生啊!哎!部分题目如下:
    1、告知输出结果true or false
      

  32.   


    我的观点是,考察下基本知识,测试下情商、智商就行了。有些东西可以在工作时自己去专研的,没必要讲基础。从看代码、改bug开始,很快就上手了。基础好又能怎么样,一天到晚不踏实、静不下心来、一看就不是搞开发的料,这种人更不能要。
      

  33.   

    我要是能给人面试
    直接考逻辑题再考点java基础
      

  34.   

    看来各位大侠们的回复,我也想说一点,对于楼主的题目,基本上还是不难的,都是考察的基本语法上的概念性问题,yield()这个方法我也没有用过,因为在开发过程过没有用到,楼上很多都是对于现在大学生的评论:如下是我的评论:
          大学在我看来只是一个平台,一个可以探索更高深知识的地方,好大学应该都是培养高素质,高技术新的人才,但是这些在社会上却没有得到很大的体现,就对于我们这个专业来说,大学里高技术的人才确实不少,但是也有很多糟糕的,相信大家都有同感,技术的体现实在项目之中,知识大多也是在项目之中学习。现在大学我就不做评论了,只能说大学有好的学习环境,然后能够拿到多少主要看个人
         楼上有人说培训学校都是代码工,这句话我不是很赞同,培训之所有叫培训我个人觉得它仅仅能在专业上给人一个基础的入门,如果想要提升还是要看个人,放眼世界有多少的成功人士不也是没有大学毕业吗?但是确成就了伟大的成就,我觉得一切多是看个人的付出,如果一个人有想法,有斗志,谁刚说他以后不是有巨大成就,要知道思维敏捷都是培养出来,技术都是学出来的,经验都是一点一滴积累出来的。
         最后我觉得我没有配论他人的资格,至于大学生如何,有多少很垃圾的人,或者培训学校很差,多事代码工,我只能说他不会仅仅是他不会,他是代码工仅仅是他是代码工,不能以一个人的成败来判断他人
      

  35.   

    遇到String类的问题总是很晕,以前也看过解释,但还是比较晕,equal不equal,==不==,要能上机试就好了。
      

  36.   

    专科生 路过! JAVA还没接触过 学过半学期C# 觉得LZ第四题有误导性!既然不能继承了 还能重写? 绝对的重载