Java T3 面试

1 线程阻塞、运行状态、就绪、可以由什么状态变成什么状态的,由这个状态变成那个状态需要满足什么条件

进程状态转换

2 线程都是建立在cpu资源消耗上 看线程那种是消耗资源最大的 非什么请求式和请求式那个占用内存是最大的?

3 死锁问题?

当线程 A 持有独占锁a1,并尝试去获取独占锁 b1 的同时,线程 B 持有独占锁 b1,并尝试获取独占锁 a1 的情况下,就会发生 AB 两个线程由于互相持有对方需要的锁,而发生的阻塞现象,我们称为死锁。

怎么防止死锁?
1)尽量使用 tryLock(long timeout, TimeUnit unit)的方法(ReentrantLock、
ReentrantReadWriteLock),设置超时时间,超时可以退出防止死锁。
2)尽量使用 Java. util. concurrent 并发类代替自己手写锁。
3)尽量降低锁的使用粒度,不要几个功能用同一把锁。
4)尽量减少同步的代码块。

4 数据库 子查询 自己多写点查询语句 熟悉表的关系

数据库2019-03-19 practice

-- 查询员工工资大于本部门的平均工资的员工信息?

解析:条件则是员工工资大于平均工资

SELECT *   -- 主查询
from employee e1
WHERE salary > 
      (
           SELECT avg(salary)
             FROM employees e2
             WHERE e2.department_id=e1.department_id
        )  ;
查询各部门的人数在5人以下的员工信息?

解析:需要对各部门人数进行筛选,并且是5人以下

SELECT *
FROM employees
WHERE department_id in
     (
           SELECT e1.department_id
             FROM employees e1 join departments d1 
                     on e1.department_id=d1.department_id
             GROUP BY d1.department_id
             HAVING count(*)<5
         );
查询各部门的平均工资大于总的平均工资的各部门的平均工资?

(解析:查询的是各部门的平均工资,所以对各部门进行筛选)

SELECT department_id,avg(salary)
from employees
GROUP BY department_id
having avg(salary) > 
       (
             SELECT avg(salary)
             from employees
             );
-- 5:查询和'Machael'同一个工作城市的员工信息
SELECT *
from employees  e 
     join departments d
               on e.department_id=d.department_id
         join locations l
                    on d.location_id=l.location_id
where l.city in
    (
            SELECT l.city
            from employees e
            join departments d
                 on e.department_id=d.department_id
          join locations l
                 on d.location_id=l.location_id
WHERE e.first_name='Michael'
        )  ;

5 动力节点 线程视频 看!、

6 collection 下边的几个接口 哪些是实现了 哪些没有 除了list、set、map、vector、还有一个从来没见过的东西。

7 jsp,html标签长啥样,引入函数怎么引,<%! 函数声明 %> bold加粗、<% @ 引入包%> 查!!

使用<%!  %>标签可以自定义函数
<%! 
String hello(){ 
    return "您好,朋友,欢迎进入JSP世界,^_^"; 
} 
%>
首先需要导入一个jar包:
jstl.jar(WebRoot\WEB-INF\lib目录下)
然后在需要引入jstl的标签中加入下面语句:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
即可。

8 测试,白盒测试的条件覆盖和判定覆盖, 条件覆盖覆盖得多还是判定覆盖覆盖得多?给你一段代码,那个测出来是判定覆盖,查!!

逻辑覆盖率:语句覆盖<条件覆盖<判定覆盖(分支覆盖)<条件-判定覆盖<组合覆盖<路径覆盖
1、语句覆盖是指选择足够的测试用例,使得运行这些测试用例时,被测程序的每一个语句
至少执行一次,其覆盖标准无法发现判定中逻辑运算的错误。

2、判定覆盖是指选择足够的测试用例,使得运行这些测试用例时,每个判定的所有可能结
果至少出现一次,但若程序中的判定是有几个条件联合构成时,它未必能发现每个条件的
错误。
3、条件覆盖是指选择足够的测试用例,使得运行这些测试用例时,判定中每个条件的所有
可能结果至少出现一次,但未必能覆盖全部分支。

4、判定/条件覆盖是使判定中每个条件的所有可能结果至少出现一次,并且每个判定本身的
所有可能结果也至少出现一次。

5、条件组合覆盖是使每个判定中条件结果的所有可能组合至少出现一次,因此判定本身的
所有可能解说也至少出现一次,同时也是每个条件的所有可能结果至少出现一次。

6、路径覆盖是每条可能执行到的路径至少执行一次。

    其中语句覆盖是一种最弱的覆盖,判定覆盖和条件覆盖比语句覆盖强,满足判定/条件覆
盖标准的测试用例一定也满足判定覆盖、条件覆盖和语句覆盖,条件组合覆盖是除路径覆
盖外最强的,路径覆盖也是一种比较强的覆盖,但未必考虑判定条件结果的组合,并不能
代替条件覆盖和条件组合覆盖。 

8 反射机制?

反射

9 单例模式!!

1、懒汉式,线程不安全
public class Singleton {  
    private static Singleton instance;  
    private Singleton (){}  
  
    public static Singleton getInstance() {  
    if (instance == null) {  
        instance = new Singleton();  
    }  
    return instance;  
    }  
}
2、懒汉式,线程安全
public class Singleton {  
    private static Singleton instance;  
    private Singleton (){}  
    public static synchronized Singleton getInstance() {  
    if (instance == null) {  
        instance = new Singleton();  
    }  
    return instance;  
    }  
}

3、饿汉式
是否 Lazy 初始化:否

是否多线程安全:是

实现难度:易

描述:这种方式比较常用,但容易产生垃圾对象。
优点:没有加锁,执行效率会提高。
缺点:类加载时就初始化,浪费内存。
它基于 classloader 机制避免了多线程的同步问题,不过,instance 在类装载时就实例化,虽然导致类装载的原因有很多种,在单例模式中大多数都是调用 getInstance 方法, 但是也不能确定有其他的方式(或者其他的静态方法)导致类装载,这时候初始化 instance 显然没有达到 lazy loading 的效果。

实例
public class Singleton {  
    private static Singleton instance = new Singleton();  
    private Singleton (){}  
    public static Singleton getInstance() {  
    return instance;  
    }  
}

¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥
eureka注册中心他就是登记一下,然后你就去找他,但是有一天你找不见他了,这个时候你又来注册中心找,谁能给你提供这个服务,例如生活委员张艺涵突然找不到了,生活方面突然解决不了了,然后你再去注册中心看看谁可以给你解决这个问题,结果发现李松可以解决这个问题。没有调用不调用这个问题,是别人主动向他发起的,我发起,我要去找你注册中心;就是我告诉注册中心,说我来了,然后eureka说你登记一下,登记一下他就存有这个地址,另外一个,他来注册中心干嘛,他也注册了,注册了以后他可能调别的服务,调别的服务完成别的功能,就去注册中心找,看看有没有我想要的东西,如果有,注册中心就告诉他谁谁可以,如果没有就告诉他我也没有。

跟hr沟通,我大致理解一下,你是不是这个意思,然后我就把我的意思给他说一下,你看看我的理解对不对,然后我把我的意思很清晰的表达一下。

10 Springmvc底层原理 以及分页的内容 redis token。

11 内部类 静态类

12 加载速度

加载速度
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 151,511评论 1 330
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 64,495评论 1 273
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 101,595评论 0 225
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 42,558评论 0 190
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 50,715评论 3 270
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 39,672评论 1 192
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,112评论 2 291
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 29,837评论 0 181
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 33,417评论 0 228
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 29,928评论 2 232
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,316评论 1 242
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 27,773评论 2 234
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,253评论 3 220
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 25,827评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,440评论 0 180
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 34,523评论 2 249
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 34,583评论 2 249