基础学习总结

1、锁sync/lock都有哪些方法,底层实现 synchronized ['sɪŋkrənaɪzd]

2、线程池的参数、线程池执行的流程,当到达线程池到达最大数,队列也满了,出现的异常

3、写一个主线程等待两个子线程执行完成,在往下执行逻辑
答案:
1、可以使用thred.jion()方法进行判断该行程执行完没有了,
2、使用CountDownLatch定义该线程数,每一个线程执行完成调用一下countDown()让CountDownLatch数量减一,最后使用await()方法,如果等于0往下执行,不等于0休眠
3、使用CyclicBarrier类,对每一个线程调用await()方法,所有线程执行完成一起返回一个状态,而CountDownLatch每个线程执行完成就返回该线程的状态
参考链接:https://blog.csdn.net/u011277123/article/details/54015755

4、自己写一个阻塞队列

5、jvm如何判断一个对象是否有效的方式

6、jvm垃圾回收机制

7、大量创建对象如何进行优化

8、目前jdk8的垃圾回收机制

9、说一些jvm我们常用的调优参数

10、arrayList 底层实现,以及扩容原理

11、hashmap 底层与实现原理

12、对list集合中的实体进行排序

13、collections.sort()的集合底层排序算法实现

14、arrays.sort()的数组底层排序实现

15、comparable与comparator他们的区别

16、spring 中的ioc与aop

17、spring ioc如何把对象注解到容器中

18、类的作用域

19、aop通过什么使方法增强,底层如果实现的前置后置通知

20、mysql索引

21、画一下name与age他们的索引图

22、介绍一下索引优化

23、like后边的条件索引是否都无效

24、redis数据结构,5.0增加了什么特性

25、redis是什么存储结构

26、redis如何做数据的持久化,他们分别有什么区别

27、redis主从复制过程

28、在rdb复制过程中产生新的数据,如果复制到从的缓存中

29、redis如何做集群,在现有的集群中如何添加一台机器,连接一台集群,查询的数据不在连接的集群上边,底层如何实现返回结果

三面没有录音只能回忆部分

30、如果对亿级别的ip数据进行汇拢统计,查出访问前十的ip地址

31、参加过项目的设计模式吗?

32、主要问的就是项目的开发流程

33、elk搭建干什么用

34、es每天大约有多少日志文件产生,对es的数据多久删除一次,对数据建立几个索引

35、redis的底层实现,底层存储,如何进行查询、添加数据

36、红黑二叉树与跳表的区别

37、算法是否了解,讲一下你们视频推荐如何实现的算法

四面

画一个熟悉项目的设计模式
对员工工资还有明细设计一个数据库表
聊一些其它的发展和底层

五面

1、ThreadLocal使用
当使用ThreadLocal维护变量的时候 为每一个使用该变量的线程提供一个独立的变量副本,是线程的局部变量,为每一个线程所单独持有的,
其他线程不能对其进行访问(因为每个线程都创建一个副本,所以要考虑到它对资源的消耗,防止出现内存溢出的情况)

2、对集合进行排序
collections.sort(list,compparable)

3、map集合,treemap与hashMap区别,treeMap如何对对象进行排序

4、static关键词有什么用处
静态成员变量,静态成员方法、静态代码块(在类初始化加载一次),static一个很重要的用途就是实现单例设计模式

5、反射机制,写一个实例中的所有方法和字段
Mirror<?> sourceMirror = Mirror.me(source);
Field[] sourceFds = sourceMirror.getFields();
int var7 = sourceFds.length;
for(int var8 = 0; var8 < var7; ++var8) {
Field sourceFd = sourceFds [var8];
String fieldName = sourceFd.getName();
}

6、写一个单例,直接new一个test是否可以new出来,(需要写一个重构方法)
class Singleton{
private static Singleton instance=null;
private Singleton(){}
public static Singleton getInstance(){
if(instance==null){
instance=new Singleton();
}
return instance;
}
}

7、多一张表中多个字段重复完全重复的记录查询出来
select a,b,c,count(*) num from x group by a,b,c having num>1

8、100个人100个房间,最开始100个房间门关闭的,每个人都轮流经过这100个房间,是他的倍数,就改变门的状态,问最后有几个门是开着的
主要是考察的该房间数下边被除数的个数是奇数还是偶数,这样理解问题就简单很多了

java基础知识点学习的更多相关文章

  1. Java核心知识点学习----多线程中的阻塞队列,ArrayBlockingQueue介绍

    1.什么是阻塞队列? 所谓队列,遵循的是先进先出原则(FIFO),阻塞队列,即是数据共享时,A在写数据时,B想读同一数据,那么就将发生阻塞了. 看一下线程的四种状态,首先是新创建一个线程,然后,通过s ...

  2. Java基础知识点总结

    前言 本文主要是我之前复习Java基础原理过程中写的Java基础知识点总结.Java的知识点其实非常多,并且有些知识点比较难以理解,有时候我们自以为理解了某些内容,其实可能只是停留在表面上,没有理解其 ...

  3. JAVA基础知识点总结(全集)

    1.JAVA简介 1.1java体系结构:j2se,javaweb,j2ee 1.2java特点:平台无关(虚拟机),垃圾回收(使得java更加稳定) 1.3 JDK与JRE,JDK:java开发环境 ...

  4. Java基础知识学习(九)

    GUI开发 先前用Java编写GUI程序,是使用抽象窗口工具包AWT(Abstract Window Toolkit).现在多用Swing.Swing可以看作是AWT的改良版,而不是代替AWT,是对A ...

  5. Java核心知识点学习----使用Condition控制线程通信

    一.需求 实现线程间的通信,主线程循环3次后,子线程2循环2次,子线程3循环3次,然后主线程接着循环3次,如此循环3次. 即:A->B->C---A->B->C---A-> ...

  6. Java核心知识点学习----线程中如何创建锁和使用锁 Lock,设计一个缓存系统

    理论知识很枯燥,但这些都是基本功,学完可能会忘,但等用的时候,会发觉之前的学习是非常有意义的,学习线程就是这样子的. 1.如何创建锁? Lock lock = new ReentrantLock(); ...

  7. Java基础知识点(四)

    前言:记录Java基础知识点,方便熟悉与掌握. 1.面向对象的"六原则一法则" “六原则一法则”:单一职责原则.开闭原则.依赖倒转原则.里氏替换原则.接口隔离原则.合成聚合复用原则 ...

  8. Java基础知识点(三)

    前言:准备将Java基础知识点总结成一个系列,用于平常复习并加深理解.每篇尽量做到短小精悍,便于阅读. 1.Math类中相关函数 Math.floor(x):返回不大于x的最大整数.eg:Math.f ...

  9. Java基础知识点(二)

    前言:Java的基础知识点不能间断. 1.Array和ArrayList的区别 关于Array的用法,参看:http://blog.csdn.net/b_11111/article/details/5 ...

随机推荐

  1. -bash: 未预期的符号 `(' 附近有语法错误

    [1]问题现象 -bash: 未预期的符号 `(' 附近有语法错误 [2]解决方案 给括号前面加反斜杠即可 Good Good Study, Day Day Up. 顺序 选择 循环 总结

  2. ORA-00600: internal error code, arguments: [kcblin_3], [103], [253952], [8192], [32769], [312], [640], [], [], [], [], []解决方法

    昨晚,一SQL执行的时候报了ORA-00600: internal error code, arguments: [kcblin_3], [103], [253952], [8192], [32769 ...

  3. activiti5/6 系列之--Activiti与BPMN2.0规范相关节点对应关系

    根据BPMN2.0规范的分类划分为以下部分: 1.启动与结束事件(event) 2.顺序流(Sequence Flow) 3.任务(Task) 4.网关(Gateway) 5.子流程(Subproce ...

  4. kruscal重构树略解

    我们先看一道题:Luogu P4197 Peaks 这道题珂以用启发式合并+主席树来做 那么强制在线呢?(bzoj 3551 [ONTAK2010]Peaks加强版) 离线做法就不行了 我们就要用一个 ...

  5. aliplayer 视频播放报错

    问题总结: 1.引用 阿里库时href和src 文件路径不加http <link rel="stylesheet" href="//g.alicdn.com/de/ ...

  6. C++读写图片数据转成Base64格式的一种方法

    最近在一个项目中要实现在客户端和服务端之间传送图片文件的功能,采用了C++语言读写图片转化成Base64格式进行传输.具体代码如下: //++Base64.h #pragma once class C ...

  7. Windows下nginx+tomcat实现简单的负载均衡

    Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器.反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请 ...

  8. 1_bytes和str

    数据运算全跳过,语言都一样,格式差异 bytes/str的区别    Python3不会以任意隐式的方式混用bytes和str,不能拼接字符串和字节包也无法在字节包里搜索字符串(反之亦然)    二进 ...

  9. 【转载】URL编码与两次encodeURI

    当使用地址栏提交查询参数时,如果不编码,非英文字符会按照操作系统的字符集进行编码提交到服务器,服务器会按照配置的字符集进行解码,所以如果两者不一致就会导致乱码. encodeURI函数采用UTF-8对 ...

  10. Linux下Java环境安装

    本节主要讲解Linux(Centos 6.5)下Java环境的安装 1. 卸载机器上默认安装的JDK 在Linux环境下一般会默认安装jdk,为了自己项目的开发部署,一般情况要重新装jdk,而且自己装 ...