面试问题(一)

2018年12月19日去面试,上午一家下午一家;上午的可以说是很成功,下午的可以说是稀巴烂,都对不起我那工作经验了。内容我整理一下,希望能帮助到看到我博客的同学。

题名叫:《 Java工程师能力评估》,这些题都在牛客网能搜到,都有详细答案。

list中该如何去删除元素:http://www.cnblogs.com/pcheng/p/5336903.html

list中的扩容机制:

 

spring面试必bei:

  1. IOC(inverse of control):控制反转,简单的说就是项目中手动创建的对象UserService的控制权交给spring框架管理。
  2. DI(deptndency injection):依赖注入,在spring创建bean对象时,动态的将依赖对象注入到bean组件,将对象依赖属性通过配置进行注入
  3. applicationContext在加载配置文件的时候初始化bean,而BeanFactory使用的是延迟加载,第一次getBean的时候才会去初始化bean。在web项目中,用webApplicationContext,很少用beanfactory
  4. spring配置bean实例化的方法:
    1. 使用构造器实例化
    2. 使用静态方法实例化
    3. 使用实例工厂方法实例化
  5. spring的声明周期:在配置<bean>元素时,通过init-method指定bean的初始化方法,destory-method来指定bean的销毁方法他只对scope=“singleton”有效,销毁方法必须手动关闭ApplicationContext对象才会被关闭。
  6. bean的生命周期
    1. instantiate Bean对象实例化
    2. populate properties封装属性
    3. 如果bean实现BeanNameAware执行setBeanName
    4. 如果bean实现BeanFactoryAware或者ApplicationAware设置工厂setBeanFactory或者上下文对象setApplicationContext
    5. 如果存在类实现BeanPostProcessor(后处理bean),执行postProcessBeforInitalization
    6. 如果bean实现了initializingBean执行afterPropertiesSet
    7. 调用init-method指定初始化方法init
    8. 如果存在类实现BeanPostProcessor,执行postProcesserAfterlnitialization
    9. 执行业务处理
    10. 如果bean实现diposableBean则执行destory
    11. 调用destory-method指定的销毁方法

什么是单例?单例就是所有的请求都用一个对象来处理,我们常用的service dao就是单例

单例分为饿汉式和懒汉式

  1. 懒汉式:占用空间少但是相对而言用时比较多
  2. 饿汉式:占用空间大但是相对而言用时比较少

饿汉式和懒汉式的区别于应用场景:

  1. 区别:饿汉式线程安全,在类创建的同事就已经创建好了一个静态对象不会改变;而懒汉式不加synchronized会是线程不安全的

mysql中explain的各个参数说明:

  1. select_type
    1. simple:查询不包含union查询或子查询(基本都是这个simple)
    2. primary:查询中若包含任何复杂的子部分,最外层查询都会被标记
    3. subquery:select或where查询包含了子查询
    4. derived:结果会放在临时表
    5. union result:从union中获取结果的select
    6. union:若第二个select出现union,则被标记为union
  2. type(顺序有最好到最差)
    1. system:平时不会出现
    2. const:表示通过索引一次就找到了
    3. eq_ref:唯一索引扫描,表中只有一条记录与之匹配
    4. ref:非唯一性索引扫描
    5. range:一般在where语句中出现<  >  in等的查询
    6. index:全表从索引中读取
    7. all:全表从硬盘读取
  3. possible_keys:若存在索引将被列出,但实际不一定会使用
  4. key:实际使用的索引,没有则为null
  5. key_len:索引中使用的字节数,长度越短越好
  6. ref:显示索引的那一列被使用了
  7. rows:扫描了多少行
  8. extra:额外信息(常见)
    1. Using index:select中使用了覆盖索引
    2. Using where:用了where条件过滤

        

转载于:https://my.oschina.net/Pirvate/blog/2990718

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值