昨天面试了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、告知输出结果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、构造方法是否可以被重写?被重载?被继承?
.......
都是如此基本的技术点,可惜了所谓的“大学生”们啊!这应届生不太好招聘啊!
当然,相信一定有不错的。为什么不去培训培训?
我也是得费不少劲!呵呵呵
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.这个还行,基本没问题。
建议大家看这本书
你只是去了一个三本学院,只是面了15个人而已,你就说这一届的大学生不行
我直接说 我是本届大四的 一样能找到大公司去做, 这些面试题随口答,目前正在学习SSH,SSH确实不熟
我的同学都是直接去笔试百度 腾讯 淘宝这些 而且很多拿到offer
我也不想再争论什么 只是想让LZ了解下 不是所有的大学生都是天天在学校玩的
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、构造方法是否可以被重写?被重载?被继承?
构造方法不能被重写,不能被继承,但是可以,并且经常被重载。非常感谢。
可以这样说,无论是开过Java课程还是自学Java的人,当初学习到这个知识点的时候肯定当时都记得那个熟啊
但是说句实话,有什么意义吗?学过之后有多少人用过?基本用不着最后肯定会遗忘掉
对于在面试之前看过一眼这个知识点的人来说肯定对答如流,但是有能说明什么呢?
如也不想想应届毕业生在学了这个知识点之后有多少真的用到这个知识了?
第一题和第四题倒是,如果答不出来的就回去好好面壁去吧还有楼主说的培训,北大青鸟那种类型的么,也不看看都学的是些啥,我我有个同学就在那里学了四年,现在什么都不会,你说他自己不好好学吧,也是!那另外一个同学呢,也是在那里学的,现在也只会点拖拖标签什么的,拿这几个题给他,我敢保证他一题也不会!
是这样子的吧!sleep让线程睡眠指定的时间!单位是毫秒!
话说LS们对第一题的评论已经够精彩了、我就不多说什么了。
从LZ倒数第三行中可以推理出LZ明显没上过大学。
不知道是眼红还是嫉世愤俗、反正就是鄙视大学生。
我承认现在大学生的含金量不高。并且很多都是混过来的。
但是难道你可以否认经过系统的教育之后的底蕴比你当年差么?
楼主你能面对我的回复的时候迅速并且不查资料的写出JVM的全称么?
如果你不知道的话、那么我告诉你。是Java Virtual Machine
现在我告诉你全称是什么了、您能用标准的读出来它么?
所以。这就是大学生被您鄙视的原因。另外您说培训。ORZ。
培训的根本意义和他的本质或者他的目的我们就不去讨论了。
您肯定处在小公司并且身居要职、养尊处优。但是不得不说您鼠目寸光、犹如井底之蛙。
为什么学历是面试的敲门砖?因为经过系统教育才会有系统的思维以及创新能力。
这样才会在现有能力的基础上不断快速的发展和进步。
比如说有A、B两种股票。A股股价稍高、但是没有风投公司看好。
B股股价稍低、但是背后有很多风投及银行的推动。您会买那只股票呢?
再一点。为什么说您在小公司。
因为小公司是没有企业文化的。尽管很多小公司对外对内都宣称自己有企业文化。
但是他们就是没有。归根结底是因为他们没有传承。
我们说中华民族的民族文化是5000年的历史传承。所以文化是需要传承的。
小公司、希望以最小的代价换来最大的收益。
你们希望可以花最少的钱、招来现阶段水平较高的人。然后期待加班。最后当事人离职。
就这样的恶性循环如何去期待传承。如何去期待企业文化。如上。我的话说完了。
最后、送君一句话:“你站在山顶上看山下的人,之所以觉得他们渺小,不是因为你的身高,只是他们还没到山顶。”
你还不如考几个算法,或者问一些原理性的东西,比如多线程的作用,举例说明。或者问一些操作系统,网络相关的知识,比这个要好。
2 本人也没用过yield()34 学过Java用过一点的话应该还是能做出来
LS某位说了“不管学校是什么,总有优秀的学生。” 这点我很认同但是去三本院校招聘就不要有什么太高的期望我不夸张的说,即便985相关专业的学生,能4题全对的也不会超过20%,甚至更低!
s1.equals(s2):true //java优化了字符串
s3==s4:false //产生了 新对象
s3.equals(s4):false
s1==s3:false
s1.equals(s3):false
equals()重写了 比较的是内容
true
true
false
true
false
true
俺大学的时候都是学C和C++。不过也有java的课。
2、sleep()可以让当前运行线程休眠指定时间,yield()没怎么用过,要看书了
3、集合内只能存放引用数据对象,数组既可存放基本类型数据也可存放引用类型数据。
4、构造方法可以被重载,不能被继承和重写。
s1 == s2: true
s1.equals(s2): true
s3 == s4: false
s3.equals(s4): true
s1 == s3: false
s1.equals(s3): true其实这些死的知识是次要的。完全考记忆的题真的不能说明什么问题。并且不同版本还可能不一样。到用到的时候,正的不行,倒一下也可以解决问题。
问的很没有水平
既然是 String 对象,我们只需要知道其 equals 的结果是否会 true 就可以了
至于其 == 的结果是否为 true 有什么意义呢?你去钻这种问题干什么?
要不是经常在 CSDN 上看到这种类型的月经贴,我也不知道这个比较的结果是什么
我们项目组里面,要是有人敢用 == 来比较 String 我直接上去就骂
而且,我可以负责的告诉你
我们公司软件部门的几十个同事,除了我这个天天泡 CSDN 的无聊人以外
第一题估计都答不上来第二个问题:
作为一个工作 6 年多
软件专业本科毕业,
专门从事 java C/S Swing 开发的技术人员
我还真没怎么用过 yield()
我们的系统用了这么多年了,刚在所有的代码中搜索了一下
使用 yield 的次数为:0第三个问题:
明显的一个用二选一法则对考生进行误导的问题
你既然问题 "是...还是...",那你的答案就应该为两者之一
集合还好了,放不了基本类型
那数组呢?基本类型和对象的引用都可以,你让人怎么回答?第四个问题:
又见冗余型误导
构造方法不可继承
既然不可继承何谈重写?
你对构造方法又问继承又问重写的就是在混淆考生的概念了
我一向都认为这种死扣基本概念的做法没什么意义
我们单位基本概念最好的某达人
代码里面大量是自动生成的代码
该注释的地方没注释,
自己写的类该有的 API 没有
代码结构混乱
可读性极差能否成为一个好的程序员,
最重要的还是:是否有优秀逻辑思维
大学一般的计算机专业全名为《计算机科学与技术》,从计算机导论开始,数据结构,操作系统,数据库,网络,软件工程,java之类的应用。然后还有组层原理,数字逻辑,单片机之类偏硬件的。
大学本身就跟专科的性质不一样,招应届生面试这些细节性问题,真不是本科生强项。
我做C++的,这些题目我部分能答上来。这种题目真的不能说明什么问题。招人用这种题目我真为母校喊冤。可能你招码农要的就是这种人,我就是受不了码农的工作跳的槽。介意lz以后多出些逻辑算法的题目,考察程序员的品质。逻辑算法题也不用死对答案,要考察应聘者的思路算法。这学校还是不错的,至少比很多学校对学生负责。课程比较结合市场。好的学生还是有很多的,当然差的也很多,希望lz好好招。
s1.equals(s2):true
s3 == s4:false
s3.equals(s4):true
s1 == s3:false
s1.equals(s3):trueequals比==要求宽
内存的问题
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)));
错误好多
他们还明明是相关专业的学生啊!哎!部分题目如下:
1、告知输出结果true or false
我的观点是,考察下基本知识,测试下情商、智商就行了。有些东西可以在工作时自己去专研的,没必要讲基础。从看代码、改bug开始,很快就上手了。基础好又能怎么样,一天到晚不踏实、静不下心来、一看就不是搞开发的料,这种人更不能要。
直接考逻辑题再考点java基础
大学在我看来只是一个平台,一个可以探索更高深知识的地方,好大学应该都是培养高素质,高技术新的人才,但是这些在社会上却没有得到很大的体现,就对于我们这个专业来说,大学里高技术的人才确实不少,但是也有很多糟糕的,相信大家都有同感,技术的体现实在项目之中,知识大多也是在项目之中学习。现在大学我就不做评论了,只能说大学有好的学习环境,然后能够拿到多少主要看个人
楼上有人说培训学校都是代码工,这句话我不是很赞同,培训之所有叫培训我个人觉得它仅仅能在专业上给人一个基础的入门,如果想要提升还是要看个人,放眼世界有多少的成功人士不也是没有大学毕业吗?但是确成就了伟大的成就,我觉得一切多是看个人的付出,如果一个人有想法,有斗志,谁刚说他以后不是有巨大成就,要知道思维敏捷都是培养出来,技术都是学出来的,经验都是一点一滴积累出来的。
最后我觉得我没有配论他人的资格,至于大学生如何,有多少很垃圾的人,或者培训学校很差,多事代码工,我只能说他不会仅仅是他不会,他是代码工仅仅是他是代码工,不能以一个人的成败来判断他人