1.java中所有类的父类是什么?他都有什么方法?

  Object类是所有类的直接或间接基类,如果一个类在声明时未继承基类,Java就默认其基类是Object,故Object被称为根类。该类位于java.lang包中,它有如下几个常用方法:
  equals():      用于比较两个对象是否指向同一块内存区域,相当于==运算符。(注意:在String类中,已将该方法改写比较字符串内容是否相同);
  hashCode(): 返回该对象的哈希码值(返回该对象的存储地址,整数),用于标识一个对象,如果两个对象相等,则哈希码值一定相同;
  toString():    返回值是String类型,描述当前对象的有关信息,当对象与String型数据的连接时,自动调用其toString()方法。

2.java中IO包下面的inputstream运用了什么设计模式?请简述你知道的设计模式?

  Decorator模式,主要功能是给一个对象动态的添加一些额外的功能,添加一个装饰,装饰必须与被装饰的组件继承于同一个接口,这样用户就不用担心装饰的集体实现,因为对他们老说是透明的。

  java I/O 的设计模式主要有装饰模式(decorator)和适配器模式。

3.ArrayList跟LinkedList的区别详细说出?

1). ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构。

2). 对于随机访问get和set,ArrayList觉得优于LinkedList,因为LinkedList要移动指针。

3). 对于新增和删除操作add和remove,LinedList比较占优势,因为ArrayList要移动数据

4.session和cookie的区别?

   话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话。常用的会话跟踪技术是Cookie与Session。Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端记录信息确定用户身份。(http://blog.csdn.net/fangaoxin/article/details/6952954)

  1、session数据保存在服务器,cookie数据保存在客户端。

  2、cookie不是很安全,别人可以分析存放在本地的cookie进行cookie欺骗,为安全考虑应当使用session(登录个人信息存放在session,其他信息存放在cookie)

  3、session数据会一定时间保存在服务器上,当访问增多时,会影响服务器性能,考虑到服务器性能应该使用cookie。

  4、一个cookie保存的数据不能超过4k,一般浏览器限制一个站点不能超过20个cookie。

5.说一下快速排序的原理?

  原理:通过一趟排序把待排序记录划分为两部分,其中一部分的关键字均小于另一部分关键的大小,然后在分别再对这两个部分进行进行排序,以达到整个序列有序。

  具体做法:附设两个指针low和high,分别设初值为low和high,设枢轴记录的关键字为key,并暂存于r[0],首先从high所指向的位置开始,向前一步搜索找到第一个关键字小于key的记录与low所指向的记录进行交换,然后在从low所指向的位置向后搜索找到第一个关键字大于key的记录与high指向的记录交换,重复上述两步骤,直到low=high相等,才得到枢轴记录的正确位置。插入即可。

6.如何在hibernate中查看原始的sql语句

  Hibernate是一个开放源代码的对象关系映射框架,它对JDBC(Java Data Base Connectivity,java数据库连接,是一种用于执行SQL语句的Java API)进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。

8.struts2的流程?

9.简述下多线程?


进程是指运行的程序,每个进程分配一定的内存空间,一个进程中存在多个线程,启动一个java虚拟机,就是打开一个进程,当进程中同时运行多个线程,叫做并发。

线程的实现方式有两种:继承Thread类和实现Runnable接口,通过覆盖run()方法来实现线程的行为。

线程状态:

New状态,使用new新建一个线程对象处于新建状态,仅仅在堆栈中分配了内存。

Runnable就绪状态,线程调用start()方法后,线程就进入就绪状态,虚拟机为它创建方法调用栈和程序计时器,处于这个状态线程可进入可运行池中,等待获取cpu使用权。

Runnabing运行状态,这个状态的线程处于cpu的使用状态,如果计算机只有一个cpu,则有一个线程处于这个状态,如果有多个cpu,则有多个线程占用不同的cpu,只有处于就行状态的线程才才有机会变为运行状态。

阻塞状态,线程由于某些原因放弃了cpu,此时不为线程分配cpu,直到线程重新进入到就绪状态。(阻塞原因:wait()、sleep()、I/O、其他原因)

调度方式:分时调度和抢占式调度。

12.java有些类中为什么需要实现Serializable接口?

Serializable接口,是java提供的通用数据存储和读取的接口,实现serializable接口的对象可以转换成字符流,这样就可以将对象存储在文件中,或是作为数据流通过网络传输到其他地方去,或是通过管道传输到系统的其他程序中,这样设计就极大的简化了类的设计,应用于分布式应用系统中。

13.hashmap,hashtable的区别?以及如何使用,以及他的一些方法?

第一,继承不同。public class Hashtable extends Dictionary implements Map

public class HashMap extends AbstractMap implements Map

第二,Hashtable 中的方法是同步的,而HashMap中的方法在缺省情况下是非同步的。在多线程并发的环境下,可以直接使用Hashtable,但是要使用HashMap的话就要自己增加同步处理了。

第三,Hashtable中,key和value都不允许出现null值。

在HashMap中,null可以作为键,这样的键只有一个;可以有一个或多个键所对应的值为null。当get()方法返回null值时,即可以表示 HashMap中没有该键,也可以表示该键所对应的值为null。因此,在HashMap中不能由get()方法来判断HashMap中是否存在某个键, 而应该用containsKey()方法来判断。

第四,两个遍历方式的内部实现上不同。Hashtable、HashMap都使用了 Iterator。而由于历史原因,Hashtable还使用了Enumeration的方式 。

第五,哈希值的使用不同,HashTable直接使用对象的hashCode。而HashMap重新计算hash值。

第六,Hashtable和HashMap它们两个内部实现方式的数组的初始大小和扩容的方式。HashTable中hash数组默认大小是11,增加的方式是 old*2+1。HashMap中hash数组的默认大小是16,而且一定是2的指数。

方法:get(key),remove(key),put(key,value),contains:containKey,containValue

,isEmpty()...

14.设计题,利用hashmap对苹果的重量进行排序?

15.struts2拦截器相关问题

16.struts2接受参数的方式

17.数据结构

18.异常的相关问题?error和exception具体?

19.还问了个MYSQL如何查看运行状态

20.问了一些关于collections的方法?

21.servlet相关知识,doPost,doGet,一些内置对象?

23.set和list的区别,一些个实现类,继承关系等等?

24.在Hibernate中java的对象状态有哪些?

25.简述你看过java类的源代码?

26.数据库事务隔离机制及其特点是什么?

27.JVM内存heap and stack

28.HTTP报文包含内容?

29.TCP/IP三次握手?

30.垃圾回收?

31.其他问了未来规划,在学校学的最好的一门,然后教育了下我说大公司注重基础跟潜力,小公司注重上来就会做事,要多看源码多看jdk注重java基础!!!

1.什么是 java 序列化, 如何实现 java 序列化?或者请解释 Serializable 接口 接口的作用?

2.MVC的各个部分都有那些技术来实现? 如何实现?
3.开发中主要使用 Spring 的什么技术 ?
4.对Spring的理解,项目中都用什么?怎么用的?对IOC、和AOP的理解及实现原理?
5.hashmap底层如何实现的?
6.arrayList底层如何扩展的?
7.谈谈Hibernate的理解,一级和二级缓存的作用,在项目中Hibernate都是怎么使用缓存的?
8.谈谈你在项目中的角色?
9.你做过的项目模块实现?
10.线程同步,并发操作怎么控制?
11.servlet容器启动过程,生命周期?
12.SQL关联关系?
13.list去重?
14.arraylist和hashmap在内存中开销?
15.sql行转列?

java研发常见问题总结 1的更多相关文章

  1. java研发常见问题总结2

    1. String.StringBuffer与StringBuilder之间区别 关于这三个类在字符串处理中的位置不言而喻,那么他们到底有什么优缺点,到底什么时候该用谁呢?下面我们从以下几点说明一下 ...

  2. 千回百折:百度Java研发offer斩获记和经验分享

    起因 面试过程 等待offer的过程中悟道 Java面试常考知识点个人总结 过程 百度——作为国内互联网的巨头之一,最近的一些风波对其褒贬不一,但是类似事件不是第一次发生,也绝对不是最后一次,对于真的 ...

  3. Java研发岗位面试归类B(附答案)

    本文承接上文:Java研发岗位面试归类A(附答案): http://www.cnblogs.com/wp5719/p/5870243.html 答案自己网上找的,如有纰漏或错误,烦请指教. 七.数据库 ...

  4. TFS 2017 培训 - 北京某银行科技部Java研发团队

    今天受邀和微软公司的朋友一起,为北京某银行科技部的两个Java研发团队做了一场TFS系统的技术培训. 按照需求分析>开发>编译>发布>测试的流程为研发团队做了全流程的介绍. 这 ...

  5. 2017实习【Java研发】面经

    标签: 实习 面经 Java研发 阿里.腾讯.华为 找2017暑假实习,经历过被腾讯拒绝的无奈,也有拿到阿里和华为offer的喜悦,找实习过程也有一段时间了,在此把之前的面试知识点和经历做个小总结,以 ...

  6. Java研发工程师知识点总结

    Java研发工程师知识点总结 最近一次更新2017年12月08日 大纲 一.Java基础(语言.集合框架.OOP.设计模式等) 二.Java高级(JavaEE.框架.服务器.工具等) 三.多线程和并发 ...

  7. 学生党如何拿到阿里技术offer: 《2016阿里巴巴校招内推offer之Java研发工程师(成功)》

    摘要: 这篇文章字字珠玑,这位面试的学长并非计算机相关专业,但是其技术功底足以使很多计算机专业的学生汗颜,这篇文章值得我们仔细品读,其逻辑条理清晰,问题把握透彻,语言表达精炼,为我们提供了宝贵的学习经 ...

  8. Java研发书单

    Java研发书单 计算机基础:<深入理解计算机系统><计算机网络> 网络方面:<TCP/IP协议卷一><unix网络编程卷一>(部分章节,JAVA主要是 ...

  9. 2015年阿里实习生面试Java研发工程师 小记

    5月5日,广州,阿里实习生面试,Java研发工程师,完全被虐orz 几乎没有Java项目开发经验,接近零基础,去水了一发,毫无悬念的被刷了..RP也是杠杠的,准备过的题目一个都没被问到,算法题也是一条 ...

随机推荐

  1. 2016 Multi-University Training Contest 10 || hdu 5860 Death Sequence(递推+单线约瑟夫问题)

    题目链接:http://acm.split.hdu.edu.cn/showproblem.php?pid=5860 题目大意:给你n个人排成一列编号,每次杀第一个人第i×k+1个人一直杀到没的杀.然后 ...

  2. day33 GIL锁 线程队列 线程池

    1.    全局解释器锁GIL Python代码的执行由Python虚拟机(也叫解释器主循环)来控制.Python在设计之初就考虑到要在主循环中,同时只有一个线程在执行.虽然 Python 解释器中可 ...

  3. Unable to verify your data submission.加入了_csrf也报400错误的解决

    <input type="hidden" name="_csrf" value="<?=Yii::$app->request-> ...

  4. django django中的HTML控件及参数传递方法 以及 HTML form 里的数据是怎么被包成http request 的?如何在浏览器里查看到这些数据?

    https://www.jb51.net/article/136738.htm django中的HTML控件及参数传递方法 下面小编就为大家分享一篇django中的HTML控件及参数传递方法,具有很好 ...

  5. Select语句完整的执行顺序

    Select语句完整的执行顺序:1.from子句组装来自不同数据源的数据:2.where子句基于指定的条件对记录行进行筛选:3.group by子句将数据划分为多个分组:4.使用聚集函数进行计算:5. ...

  6. Mybatis学习笔记8 - resultMap自定义结果集映射规则

    一.resultMap自定义结果集映射规则 示例如下: 接口定义: package com.mybatis.dao; import com.mybatis.bean.Employee; public ...

  7. Mysql 游标的定义与使用方式

    创建游标: 首先在MySql中创建一张数据表: CREATE TABLE IF NOT EXISTS `store` (   `id` int(11) NOT NULL AUTO_INCREMENT, ...

  8. git跟svn 服务端对比

    Git已经火了很久,简单的使用也没有问题,但有几个问题一直以来都没有搞清楚:git跟svn有哪些异同,两者相互的优劣是什么,git的分布式怎么理解,为什么有离线提交,,,自己动手,分别看一下服务端跟客 ...

  9. linux下Python2.7编译安装PyQt5

    ---作者吴疆,未经允许,严禁转载,违权必究--- ---欢迎指正,需要源码和文件可站内私信联系--- -----------点击此处链接至博客园原文----------- 功能说明:在ubuntu系 ...

  10. C面向对象编程

    C语言面向对象编程 1. 定义一个SuperObject结构体, 里面包含最少的元素, 但是确实每一个对象都含有的, 这样可以实现多态 2. 每一个对象都是基于类的, 我们知道类都是单例对象, 所以我 ...