本文目录一览:
- 1、面试java开发工程师一般会提什么问题
- 2、作为一个面试官,我会问初级java工程师哪些问题?
- 3、谁知道JAVA工程师面试的脑筋急转弯,越多越好,要有答案的,谢谢~~!
- 4、JAVA高级软件工程师面试题
- 5、应聘JAVA工程师,面试官常问一些什么问题?
面试java开发工程师一般会提什么问题
首先都是问工作经历,上一家公司的工作情况(应届生会问些学校表现、毕业设计之类的)。然后问些技术问题,JAVA基础的概念,线程、并发、网络、文件操作、数据库操作之类等等。学习java推荐选择千锋教育,千锋教育拥有国内一体化教学管理及学员服务,助力更多学员实现高薪梦想。
java开发工程师的就业方向有:
1.Android开发
Android是世界上最大的智能手机操作系统。根据Strategyalytics的最新研究报告,2016年第三季度全球智能手机出货量达到3.75亿台。Android操作系统获得了创纪录的88%全球市场份额,挤压了苹果IOS等平台。Java是Android应用的主要开发语言。
2.web开发
Web开发语言很多,Java就是其中之一。Java在开发高访问、高并发、集群的大型网站方面有很大的优势,比如去哪儿网、美团等。
3.客户端开发
Java客户端开发主要针对政府、事业单位和大型企业,如医疗、学校、OA、邮箱、投票、财务、考试、物流、矿山等信息系统。然而,客户端开发只是为了帮助自己企业的主营业务。
想要了解更多关于java的相关信息,推荐咨询千锋教育。千锋教育成立教研学科中心,推出贴近企业需求的线下技能培训课程。课程包含HTML5大前端培训、JavaEE+分布式开发培训、Python人工智能+数据分析培训、全链路UI/UE设计培训、云计算培训、全栈软件测试培训、大数据+人工智能培训、智能物联网+嵌入式培训、Unity游戏开发培训、网络安全培训、区块链培训、影视剪辑包装培训、游戏原画培训、全媒体运营培训。
作为一个面试官,我会问初级java工程师哪些问题?
初级java工程师多数是刚毕业或者工作1,2年的新人。对于新人,面试中基础问题会问道很多,因为先要考察这个人的基础。
关于基础类的题目,我在面试初级java工程师的时候一般会问下面两大类问题,每类5个题目,这样下来我就基本可以了解这位工程师的程度了。
java基础类
面向对象基础类
java基础类
1.描述一下java的访问修饰符,和它们之间的区别?
回答:如果可以回到出public,private,protected,就算是ok;回答出default的,加分。
2. int和Integer 区别?
回答:如果回答出Integer是int的包装类,就算ok;回答出其他的基本类型和它们相应的包装类,加分。
3.如何定义一个单精度浮点类型的变量?
回答:float 变量名=1.2f ;回答出不加最后的f为双精度浮点类型,加分
4. equals和==的区别?
回答: equals是值比较(一般处理java开发都会这么说,算是ok的)而==是引用比较(或者对象比较);回答equals是可以自定义的,加分
5.将一个数组作为参数传递到一个方法中,在方法中,数组内的元素值被改变了,那么在方法外部,这个数组内的元素是否也被改编了?
回答:是,因为java方法中传递的是引用,就ok。如果回答中,将引用说明了自己的理解,加分。
面向对象基础类
1.重载和重写的区别?
回答:这个看个人理解,理解没有什么大的偏差就ok;回答出多态相关的,加分。
2.构造方法能不能重载?
回答:可以重载,ok;回答构造方法时不能继承的,所以如果要调用指定父类构造器就必须重写子类构造方法,加分。
3.抽象方法(abstract)是否可以被final、static、native修饰?
回答:都不可以,因为抽象方法是必须子类实现的,final方法时不可以被重写的,static是父类必须实现的方法,native是本地语言实现的方法。回答出封装和继承相关的,加分
4.当父类引用指向子类对象的时候,子类重写了父类方法和属性,那么当访问属性的时候,访问是谁的属性?调用方法时,调用的是谁的方法?
回答:访问的是父类的属性,调用的是子类的方法,ok;如果可以画图解释的话,加分
5.抽象类和接口有什么异同?
回答:一些类定义上的区别,ok;回答在应用过程中,如何根据业务定义接口,加很多分
最后,如果前面问题回答的不错,会补充两个编程习惯问题。
1.在你写过的代码中,你写过超过2层的循环吗,怎么实现的?
回答:没有,就算ok;如果回答有,听一下实现,如果原因说不出来,扣分。
2.在你写过的代码中,if语句最多嵌套了几层,最多有多少分支,怎么实现的?
回答:3层以下,就算ok;如果回答3层以上,听一下实现,如果原因说不出来,扣分。
4,5个分支,就算ok;如果回答5个分支以上,听一下实现,如果原因说不出来,扣分。
最后两个题其实比较陷阱,但是正是一个反向的思考才能了解面试者之前的工作状态。
如果面试者在平日里就有好的习惯,自然不用担心。
谁知道JAVA工程师面试的脑筋急转弯,越多越好,要有答案的,谢谢~~!
1.有一个人的了一种很严重的疾病,医生给他开了两种药片,分别称为 A 药片和 B 药片,每种分别为 4 片,每天必须吃两次,每次必须吃 A 和 B 药片各一片,出现错误就会死掉,第一天,他正常吃药,但是,第二天吃药的时候,他不小心把药片搞混了,这两种药片的外观完全一样,他也没有别的办法再获取药片,那么,他应该怎么办?
答案
把剩下的四片药全部分开成两半,一半放一堆,另一半放另一堆,第二天每次吃其中一堆就行了
2.5000的阶乘末尾有几个0
答案:
1249个
因为一个5的倍数产生一个零,25的倍数产生二个零
125的倍数产生三个零,625的倍数产生四个零
3025产生五个零,前面计算过的不说,都比前面的多产生一个零
5,10,15,...,5000 一共1000个
25,50,75,...,5000 共200个
125,250,...,5000 共40个
625,1250,...,5000 共8个
3125 只有1个
所以共有1249个零
3.一头母牛在3—10岁的时候每年可以生一头小牛,生公牛和母牛的比率是50%,在牛12岁的时候就送入屠宰场买了。现在有一个农夫有1头1岁大的母牛,在母牛3岁的时候就送到附近的农场去配种,请问40年后这个农夫可能会有多少头牛,写出相关的代码或答题思路,最好用面向对象。
答案:
Java代码
package com.polaris.test;
import java.util.*;
/**
* 问题描述:
*
* 一头母牛在3—10岁的时候每年可以生一头小牛,生公牛和母牛的比率是50%,
* 在牛12岁的时候就送入屠宰场买了。现在有一个农夫有1头1岁大的母牛,
* 在母牛3岁的时候就送到附近的农场去配种,请问40年后这个农夫可能会有多少头牛,
* 写出相关的代码或答题思路,最好用面向对象。
* @author polaris
* @version 1.0
*/
public class ComputeCattleNum {
// 保存所有母牛
private static ListCattle cows = new ArrayListCattle();
// 保存所有当前农夫拥有的牛
private static ListCattle cattles = new ArrayListCattle();
public static void main(String[] args) {
// 第一头母牛
Cattle cow = new Cattle(0,3);
cows.add(cow);
// 40年
for(int i=0;i40;++i) {
// 大于等于12岁的牛送到屠宰场卖掉;同时每年,所有的牛
for(int j=0;jcattles.size();++j) {
Cattle temp = cattles.get(j);
if(temp.getDead()) {
cattles.remove(temp);
}
// 开始只有一头母猪,年龄不生长
if(i0) {
cattles.get(j).grow();
}
}
// 母牛生小牛
for(int j=0;jcows.size();++j) {
Cattle calf = cows.get(j).bear();
if(calf!=null) {
if(calf.getSex()==0)
cows.add(calf);
cattles.add(calf);
}
}
}
System.out.println("40年后农夫拥有" + cattles.size() + "头牛");
}
}
class Cattle {
// 牛的雌雄:0代表雌,1代表雄
private int sex;
// 牛的年龄
private int age;
// 是否卖掉(已死)
private boolean dead = false;
public Cattle(int sex, int age) {
this.sex = sex;
this.age = age;
}
/**
* 生小牛
* @return 生出的小牛
*/
public Cattle bear() {
Cattle calf = null;
if(this.sex==0) {
if(this.age=3 this.age=10) {
calf = new Cattle(random(),0);
} else {
//System.out.println("抱歉,此牛太小或太老,不能生育。");
}
} else {
//System.out.println("有没有搞错,公牛也想让它生小牛?");
}
return calf;
}
private int random() {
return (int)Math.round(Math.random());
}
/**
* 长大一岁,如果当前大于等于12岁,则卖掉
*/
public void grow() {
if(this.age=12) dead = true;
else this.age++;
}
public int getSex() {
return this.sex;
}
public boolean getDead() {
return this.dead;
}
}
4.宴会桌旁
在某宾馆的宴会厅里,有4位朋友正围桌而坐,侃侃而谈。他们用了中、英、法、日4种语言。现已知:
A.甲、乙、丙各会两种语言,丁只会一种语言;
B.有一种语言4人中有3人都会;
C.甲会日语,丁不会日语,乙不会英语;
D. 甲与丙、丙与丁不能直接交谈,乙与丙可以直接交谈;
E. 没有人既会日语,又会法语。
请问:甲乙丙丁各会什么语言?
答案:
第一题正解
甲:中日
乙:中法
丙:英法
丁:中
5.借机发财
从前有A、B两个相邻的国家,它们的关系很好,不但互相之间贸易交往频繁,货币可以通用,汇率也相同。也就是说A国的100元等于B国的100 元。可是两国关系因为一次事件而破裂了,虽然贸易往来仍然继续,但两国国王却互相宣布对方货币的100元只能兑换本国货币的90元。有一个聪明人,他手里 只有A国的100元钞票,却借机捞了一大把,发了一笔横财。请你想一想,这个聪明人是怎样从中发财的?
答案:
拿着A国100在A国换好B国的钱,然后再拿着换好的B国的钱去B国换A国的钱
如此循环
6.快马加鞭
墨西哥农村现在仍然可以看到人们用马和驴运载货物。一位商人把四匹马从甲村拉到乙村,而从甲村到乙村,A马要花一小时,B马要花两小时,C马要花四小时,D马要花五小时。
这位商人一次只能拉两匹马,回来时他还要骑一匹马,其中以走得慢的那匹马作为从甲村拉到乙村所需的时间。听说有人花了12小时就把四匹马全部从甲村拉到乙村,请问:他是如何办到的?
答案:
AB一起过B回来 4小时
CD 一起过A回来 6小时
AB 一起过 2小时
一共12小时
7.击鼠标
击鼠标比赛现在开始!参赛者有拉尔夫、威利和保罗。
拉尔夫10秒钟能击10下鼠标;威利20秒钟能击20下鼠标;保罗5秒钟能击5下鼠标。以上各人所用的时间是这样计算的;从第一击开始,到最后一击结束。
他们是否打平手?如果不是,谁最先击完40下鼠标?
答案:
拉尔夫
一个加速然后减速的过程。三个人平均速度相等。达到平均速度时间在中间的人可能性最大。
8.感觉
用第一感觉判断8+8=91这个等式正确吗?说明理由。
答案:
不正确。8+8=16
9.谎话
如果下列每个人说的话都是假话,那么是谁打碎了花瓶?
夏克:吉姆打碎了花瓶。
汤姆:夏克会告诉你谁打碎了花瓶。
埃普尔:汤姆,夏克和我不太可能打碎花瓶。
克力斯:我没打碎花瓶。
艾力克:夏克打碎了花瓶,所以汤姆和埃普尔不太可能打碎花瓶。
吉姆:我打碎了花瓶,汤姆是无辜的。
答案:克力斯。吉姆的话有两个条件,只要一个为false就为false。
10.大有作为
鲁道夫、菲利普、罗伯特三位青年,一个当了歌手,一个考上大学,一个加入美军陆战队,个个未来都大有作为。现已知:
A. 罗伯特的年龄比战士的大;
B. 大学生的年龄比菲利普小;
C. 鲁道夫的年龄和大学生的年龄不一样。
请问:三个人中谁是歌手?谁是大学生?谁是士兵?
歌手 大学 美军陆战队
鲁道夫 X true
菲利普 true X X
罗伯特 true X
由A B=》罗伯特比菲利普小比战士大。所以菲利普不是战士
11.麻省理工大学的学生
美国麻省理大学的学生来自不同国家。
大卫、比利、特德三名学生,一个是法国人,一个是日本人,一个是美国人。现已知:
1、 大卫不喜欢面条,特德不喜欢汉堡包;
2、 喜欢面条的不是法国人;
3、 喜欢汉堡包的是日本人;
4、 比利不是美国人。
请推测出这三名留学生分别来自哪些国家?
答案:
法国人 日本人 美国人
大卫 true X
比利 true X
特德 X true
喜欢汉堡的是日本人,特德不喜欢汉堡=》特德不是日本人
喜欢汉堡的是日本人,所以喜欢面条的可暂假设也不是日本人=》美国人喜欢面条,大卫不喜欢面条=》大卫也不是美国人。所以特德是美国人
喜欢面条的不是法国人可暂假设不喜欢面条的是法国人=》大卫是法国人
所以=》 比利时日本人
然后在那上面假设的结果挨个判断原题条件。每个条件都符合。所以以上假设成立。
如需更多(包括各种面经,笔经)加我QQ:719116861。注明java!
JAVA高级软件工程师面试题
第七题是每小时25公里
假定火车的速度为X,时间为T,隧道长度为S
火车:X×T=S
人:10×T=2/5S(五分之二S)
应聘JAVA工程师,面试官常问一些什么问题?
面试啊,一般不会问太具体的问题,语法会在笔试里考,然后一般面试分技术面试和综合面试。一般情况是,你过了笔试,然后去技术面试,然后综合面试。技术面试官一般是拿着你的简历和笔试试卷,一开始会问你那些写错的地方。然后问你有什么项目经验,如果有,会追问项目的种种,比如你开发了一个图书馆信息管理系统,会问你用了什么框架,比如你说用了struts,然后他会问你struts的基本原理,你大致讲一下对struts框架对servlet的封装和配置文件,然后他会问一些你数据库的东西,主要是你数据是如何设计的~。大致是这个流程。然后综合面试就是问你在学校干了什么 班干部什么 学校活动 学生会 还有 项目都可以随便说说,聊聊。
有些技术面试官会问你一些智力题(通常这样的面试官都不是项目经理,是稍微懂点技术的人力资源,比较2的反正)
技术题目可以在网上搜索,另外就是看程序员面试宝典这本书。
技术面试官还会问你对其他技术,(你会的东西都应该写在简历上),比如你简历上说你会Hibernate,那他也会问你Hibernate的相关东西。OOP思想什么的,设计模式也会涉及的