首页 > 编程语言 > 详细

菜鸟Java大面经------------做我自己的大面经

时间:2016-06-14 02:04:16      阅读:211      评论:0      收藏:0      [点我收藏+]

面试官:M?? 我: I?
在面试官进行面对面面试的,紧张有一些,最烦的是自己知道怎么做,一问大脑短路了下,
然后开始吐词不清,说到后面忘记前面还有东西没说完整,又想去补充下,补充完了在说后面,
顿时感觉自己表述的凌乱不堪。。。经验还是总结了一些些,在这里慢慢累积吧;
?? 1.面试官问你时,你慢慢将问题的核心转移到你自己擅长的部分,因为,他问你一个问题,然后
??????? 你可以自由发挥,而将你要说的重点放在后面,慢慢说,有几成机会他会顺着你问下去
???? (除非他自己事先准备好了几个问题,非要按流程来),所以说他问你问题时,
?????? 千万不要自己把自己带向死路,尽量的把问题引向自己擅长的领域;
?? 2.稳定性,就业老师多次给我们强调这个问题,在面试时,你要展现出你在这里工作的强烈愿望即可;
JAVA:
①:对面向对象的理解
M:你觉得对象是什么?面向对象又是什么?
I:对象,事实是一类事物的实例,通俗点说,就是某个个体;
? 面向对象是说,我们在编程时可以直接操纵某个具体的对象而不需要像
? C语言一样为每个个体再去编写特定的属性或函数;
M:那类呢?类有什么特点(或者说什么是类)?
I:类其实就是对某一类事物的抽象,它将这类事物的属性,行为抽取出来组成一个类;
? 在Java里类有三个主要的特点:封装、继承、多态;
? 封装指的是类里面的访问修饰符,private可以将字段封装起来,防止其他类的访问;
? 继承是指:类和类之间可以单继承;
? 多态:类的多态主要体现在以下三方面:重载、覆盖,父类引用指向子类的实例
M:构造方法可以被重载和覆盖吗?
I:构造方法可以被重载,但是不能被覆盖;因为重载可以发生在一个类里面,覆盖发生
? 在有继承关系的类之间,如果在子类中覆盖父类的构造方法,
? 而这个方法在子类中并不符合类里面的方法声明的规范;
②:各种区别理解
M:什么是抽象类,什么是接口,抽象类和接口有什么区别?
I: 抽象类由abstract修饰,接口由interface声明;
?? 抽象类的方法可以是抽象的,也可以是非抽象的,接口里面的方法必须是抽象的;
?? 抽象类有构造方法,但不能直接创建实例,接口无构造方法也不能直接创建实例;
?? 抽象类如果省略修饰符,默认为default,接口省略修饰符,默认为public abstract;
?? 抽象类可以有字段,接口里的字段默认为静态常量;
?? 抽象类只能被其子类单继承,而接口可以多实现;
M:final、finalize、finaly有什么区别?
I: fianl用在类里面,可以修饰字段、方法、类
????? 修饰字段时,表示该字段为常量
????? 修饰方法时,表示该方法不能被覆盖
????? 修饰类时,表示该类为最终类,不能被继承
?? finally用在异常里,通常和try搭配使用,在fianlly放置的语句,是必须被执行的语句,
?? 通常放置一些关闭流的操作
?? finalize在Object类里,被所有类所继承,当对象使用完毕后,系统会自动调用该方法来
?? 处理使用完毕的对象,如果想手动调用,可以使用System.gc();语句来调用;
M:Collection和Collections又有什么区别?
I:Collecttion是集合接口,Collections是类,包含若干用来处理集合元素的方法;
M:String,StringBuilder,StringBuffer的区别?

I:String,不可变字符串,通常用来存储一些不需要被修改的字符串
? ? StringBuffer,可变字符串,通常用来存储一些需要修改的字符串,线程安全,同步,效率比StringBuileder低一些
??? StringBuilder, 可变字符串,通常用来存储一些需要修改的字符串,线程不安全,异步,效率比StringBuffer高一些
③:数据库
M:索引有哪些优点,又有哪些缺点?
? 优点:索引在面对大量数据时,可以极大的提高查询效率
? 缺点:虽然如此,但是在面对经常需要修改(添加,修改,删除)的表时,就会增加系统的额外开销,降低效率
? 补充:在Oracle数据库中,索引的数据最好和表的数据放置在不同的表空间,否则会引起I/O竞争
④:JDBC
M:工具类中你用到了哪些类或接口?
I: DriverManager:conn=DriverManager.getConnection(url,user,password);
?? Connection:pstmt=conn.prepareStatement(sql);
?? PreparedStatement rs=pstmt.executeQuery();
? ResultSet:rs
⑤:Servlet
M:通过"查询"按钮实现一个页面跳转,显示出查询结果,请你详细地描述下这个过程?
I: 点击提交,通过button提交给后台对应的servlet,然后在servlet的中通过service对象调用Dao层中的查询方法,
?? 查询方法通过JDBC连接数据库,将查询出来的结果放到一个集合中,在servlet中存到一次回话Session中,然后
? 转发到显示结果的页面上,在该页面上通过Session对象读取结果集,然后将其显示出来;
⑥:Web前端
M:html,servlet,java代码在前端执行的先后顺序?
I:Java>html>servlet

菜鸟Java大面经------------做我自己的大面经

原文:http://ye-wolf.iteye.com/blog/2304287

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!