码迷,mamicode.com
首页 > 其他好文 > 详细

9月18号面试总结(guihuaju)

时间:2019-09-19 01:45:39      阅读:85      评论:0      收藏:0      [点我收藏+]

标签:空闲   sync   空间   结构   释放内存   通知   sql语句   面试   接口   

1.interceptor加载bean
interceptor没有被Spring容器管理,只有都在容器中的对象,才能使用注解获取。
实现ApplicationContextAware接口:这个类可以方便获得ApplicationContext中的所有Bean。这个类可以直接获取Spring配置文件中,所有有引用到的bean对象。
一定要让继承ApplicationContextAware接口的bean被Spring上下文管理,在springmvc配置文件中定义对应的bean标签,或者使用@Component标注。

2.23种设计模式
简单工厂模式、单例模式、代理模式、责任链设计模式、观察者设计模式

3.jvm原理
方法区:类信息、常量、静态变量,运行时常量池
堆区:对象
栈区:基础数据类型+对象引用

4.gc回收机制
1. 垃圾回收机制回收JVM堆内存里的对象空间,不负责回收栈内存数据。
2.垃圾回收机制回收任何对象之前,总会先调用它的finalize方法
3.可以通过System.gc()通知系统进行垃圾回收
4.java自动回收机制中的gc线程执行的优先级最低,当cpu空闲时,才会轮到gc线程执行;当jvm堆内存不足时,gc会自动执行,清理过期对象和垃圾,释放内存空间。当一次清理之后,内存仍然不足时,gc会重复执行。

5.mysql填优关键字
MySQL提供了Explain,用于显示SQL执行的详细信息,可以进行索引的优化。
sql语句优化:
主要原则就是应尽量避免全表扫描,应该考虑在where及order by 涉及的列上建立索引。
使用alter table语句来为表中的字段添加索引的基本语法是:
ALTER TABLE <表名> ADD INDEX (<字段>);

6.String new String 区别
String 常量 是在 方法区 new String() 栈区放引用,堆区放对象

7.Spring包扫描
<context:component-scan base-package>
注解自动扫描

8.hashcode的作用
1、hashCode的存在主要是用于查找的快捷性,如Hashtable,HashMap等,hashCode是用来在散列存储结构中确定对象的存储地址的;
2.如果两个对象相同,就是适用于equals(java.lang.Object) 方法,那么这两个对象的hashCode一定要相同;
3.两个对象的hashCode相同,并不一定表示两个对象就相同,也就是不一定适用于equals(java.lang.Object) 方法,只能够说明这两个对象在散列存储结构中,如Hashtable,他们“存放在同一个篮子里”。

10.@bean @component 的区别
@Component注解表明一个类会作为组件类,并告知Spring要为这个类创建bean。

@Bean注解告诉Spring这个方法将会返回一个对象,这个对象要注册为Spring应用上下文中的bean。通常方法体中包含了最终产生bean实例的逻辑。

11.线程安全
final Object o=new Object();
synchronized(o){
o.wait();

o.notify();

}

9月18号面试总结(guihuaju)

标签:空闲   sync   空间   结构   释放内存   通知   sql语句   面试   接口   

原文地址:https://www.cnblogs.com/WhiperHong/p/11546368.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!