zoukankan      html  css  js  c++  java
  • 面试记录11-23

    1.java1.8新特性

      接口中允许默认方法和静态方法

      lamdba表达式:简化代码,包括匿名内部类和集合遍历

      ::表示对象引用或者构造器引用

      clock和localDateTime获取时间

    2.多系统数据交互:

      socket网络通信

      文件传递数据

      数据库传递数据

      消息队列传递数据(activeMQ)

    3.springboot原理

      可以无配置文件使用注解开发

      maven管理依赖关系

      内置http服务器

    4.springmvc原理

      客户端发送请求到dispatchServlet,通过映射器和配置文件或注解生成处理器,处理对应controller的业务逻辑,返回ModelAndView,通过视图解析器解析并将结果返回客户端渲染页面

    5.java内存模型

      java文件经过编译器编译为class文件,经过classLoader加载到jvm中运行

      java内存空间:

        方法区:类的加载信息,变量、常量、常量池(常量和类的全名,字段名和属性,方法名和属性)

        堆:对象的实例

        程序计数器:字节码解释器工作和多线程工作需要用到

        虚拟机栈:方法执行流程需要用到

        本地方法栈:线程私有的数据区域

    6.线程池:

      使用java.util.concurrent.Executor接口

      使用多线程时,如果线程创建时间+线程销毁时间>线程执行时间,就会考虑使用多线程

      线程池把创建线程和销毁线程放在程序空闲时间操作,并减少了一些线程的创建和销毁时间,而且限制了线程数量

  • 相关阅读:
    虚拟内存布局、内存的分工、堆与栈
    spring bean生命周期
    【iOS开发-29】解决方式:TabBar的图片不显示,仅仅显示灰色的正方形
    地图上显示div点位
    Android控件:RadioButton(单选button)
    innodb next-key lock解析
    AFNetworking2.0源代码解析
    python面向对象编程
    FlatBuffers与protobuf性能比較
    Android 混淆打包不混淆第三方jar包
  • 原文地址:https://www.cnblogs.com/xiaoguangit/p/10006869.html
Copyright © 2011-2022 走看看