美文网首页
Java面试问题汇总(每天进步一点点)

Java面试问题汇总(每天进步一点点)

作者: 穿梭在围城 | 来源:发表于2018-11-14 18:51 被阅读0次

    面试问题汇总

    1.final、finally、finalize的区别

    • final是修饰符:被修饰的类不能被继承,被修饰的方法不能被重写,被修饰的变量只能被赋值一次
    • finally是异常处理的重要组成部分:try....catch....finally,不管时候产生或者跑出异常都会执行finally里面的操作,一般我们在其中做释放资源的操作
    • finalize:是Object类中的方法,所以说所有都得类都会有这个方法,这个方法主要是在对象被GC机制回收的时候调用,一般也是做释放资源的操作

    2.Overload与Override的区别

    • Overload 特点

      • 在使用重载时只能通过不同的参数样式。例如,不同的参数类型,不同的参数个数,不同的参数顺序(当然,同一方法内的几个参数类型必须不一样,例如可以是fun(int, float), 但是不能为fun(int, int));
      • 不能通过访问权限、返回类型、抛出的异常进行重载;
      • 方法的异常类型和数目不会对重载造成影响;
      • 重载事件通常发生在同一个类中,不同方法之间的现象。
      • 存在于同一类中,但是只有虚方法和抽象方法才能被覆写。
    • Override特点
      • 覆盖的方法的标志必须要和被覆盖的方法的标志完全匹配,才能达到覆盖的效果;
      • 覆盖的方法的返回值必须和被覆盖的方法的返回一致;
      • 覆盖的方法所抛出的异常必须和被覆盖方法的所抛出的异常一致,或者是其子类;
      • 方法被定义为final不能被重写。
      • 对于继承来说,如果某一方法在父类中是访问权限是private,那么就不能在子类对其进行重写覆盖,如果定义的话,也只是定义了一个新方法,而不会达到重写覆盖的效果。(通常存在于父类和子类之间。)

    3.什么是事物及其特性

    • 概念:事务是应用程序中一系列严密的操作,所有操作必须成功完成,否则在每个操作中所作的所有更改都会被撤消。也就是事务具有原子性,一个事务中的一系列的操作要么全部成功,要么一个都不做。
    • 特性:原子性、隔离型、持久性、一致性

    4.事物会出现的问题(并发问题)

    • 脏读:一个事物读到了另外一个事物未提交的数据(我还没提交你就读到了)
    • 不可重复读:一个事物读到了另外一个事物已经提交Update的数据(我还没修改完,你就读了)
    • 幻读(虚读):一个事物读到另外一个事物已经提交的增删的数据(我对整个表内容操作时,你就增删数据)

    5.事物的隔离级别

    • 读未提交:所有问题均有可能发生
    • 读已提交:避免脏读(oracle默认)
    • 不可重复读:避免脏读和不课重复读(mysql默认)
    • 串行化:避免所有问题

    6.数据库的控制

    • 事物控制来源于关系型数据库
    • Mysql的控制:
      • 存储引擎:innoDB(支持事物)
      • 存储引擎:MyIsam(不支持事物)
    • jdbc事物的控制:关闭自动提交(CommitAuto(false))
    • Hibernate中的事物控制:使用Session进行事物控制:session.beginTransition();
    • Spring使用Aop进行事物管理

    7.线程的状态

    • 就绪
    • 运行
    • 阻塞
    • 终止

    8.创建线程的方式

    • 实现Runnable接口
    • 继承Thread类
    • 实现callable和futureTask创建线程
    • 通过线程池获取

    9.java面向对象的特点

    • 封装
    • 继承
    • 多态
    • 抽象

    10.java中的基本数据类型

    • 整形:byte、short、int、long
    • 浮点型:float、double
    • 字符型:char
    • 布尔型:boolean

    11.==与equlas的区别

    • 对于基本数据类型,“==”比较的是两者的值是否相等。

    • 对于引用数据类型

      • “==”比较的是引用的地址是否相同

        Object中的.equals()方法和"==’功能一样。

      • 但是String类中的.equals()方法重写了,比较的是两个引用对象的内容是否想同。

    • 简而言之:如果勒种没有重写equals()方法的话,其实与“==”是一样的

    12.你知道的集合类都有哪些以及常用方法

    • Collection的子类
      • List:ArrayList,LinkedList,Vector
      • Set:HashSet,TreeSet,HashTable
      • 其主要方法有:add(),get(),addAll(),renmove(),contains()
    • Map的子类:
      • HashMap
      • HashTable
      • 其主要方法有:put,remove,get,cotainsKey

    13.java中的异常如何处理

    • 捕获异常:try...catch...finally
    • 继续向上层抛出异常:throws

    14.jsp与servlet的却别以及servlet的执行流程

    • 区别:jsp编译后就是servlet,jsp比servlet更擅长页面显示而servlet更注重逻辑控制,servlet没有内至对象
    • servlet的执行流程:用户请求-->servlet映射-->servlet的类-->执行doget方法
    • servlet的生命周期: init()-->service()-->destory()

    15.get请求与post请求的区别

    • get请求的参数在请求头中,post在请求体重
    • get的安全性相比post较差
    • get的内容大小有限制

    16.重定向和转发

    • 重定向:HttpServletResponse.sendRedirect
    • 转发:RequestDispatcher.forward
    • 区别:
      • 转发地址栏不变(一次请求),重定向地址栏变化(两次)
      • 转发不用写项目名称,重定向需要编写项目名称
      • 转发可以使用request对象传递值,重定向不可以使用request对象传递值
      • 转发只能在服务器的内部进行操作,重定向可以定向到任何的资源!!

    17.tomcat的常用配置

    • 目录结构

      /bin:脚本文件目录。
      /common/lib:存放所有web项目都可以访问的公共jar包(使用Common类加载器加载)。
      /conf:存放配置文件,最重要的是server.xml。
      /logs:存放日志文件。
      /server/webapps:来管理Tomcat-web服务用的。仅对TOMCAT可见,对所有的WEB APP都不可见(使用Catalina类加载器加载)。
      /shared/lib:仅对所有WEB APP可见,对TOMCAT不可见(使用Shared类加载器加载)。
      /temp:Tomcat运行时候存放临时文件用的。
      /webapps:web应用发布目录。
      /work:Tomcat把各种由jsp生成的servlet文件放在这个目录下。删除后,启动时会自动创建。

    • 配置文件

      server.xml:主要的配置文件。
      web.xml:缺省的web app配置,WEB-INF/web.xml会覆盖该配置。
      context.xml:不清楚跟server.xml里面的context是否有关系。

      port:端口

      minProcessors:最小线程

      maxProcessors:最大线程

    Snipaste_2018-11-15_21-46-41.png Snipaste_2018-11-15_21-48-51.png Snipaste_2018-11-15_21-52-38.png Snipaste_2018-11-15_22-08-26.png Snipaste_2018-11-15_22-09-31.png Snipaste_2018-11-15_22-15-49.png Snipaste_2018-11-15_22-20-43.png Snipaste_2018-11-15_22-27-33.png Snipaste_2018-11-15_22-35-31.png 1.png Snipaste_2018-11-15_23-42-12.png Snipaste_2018-11-16_00-04-21.png Snipaste_2018-11-15_22-39-59.png 微信图片_20181115220205.png
    image.png
    image.png

    相关文章

      网友评论

          本文标题:Java面试问题汇总(每天进步一点点)

          本文链接:https://www.haomeiwen.com/subject/logjfqtx.html