2018年2月5日

摘要: 阿里、华为、腾讯Java技术面试题精选 2017-10-27 19:30技术/腾讯/华为 阿里、华为、腾讯Java技术面试题精选 2017-10-27 19:30技术/腾讯/华为 JVM的类加载机制是什么?有哪些实现方式? 类加载机制: 类的加载指的是将类的.class文件中的二进制数据读入到内存中 阅读全文
posted @ 2018-02-05 14:12 木土aaa 阅读(200) 评论(0) 推荐(0) 编辑
 
摘要: 1、set集合从原理上如何保证不重复 1)在往set中添加元素时,如果指定元素不存在,则添加成功。也就是说,如果set中不存在(e==null ? e1==null : e.queals(e1))的元素e1,则e1能添加到set中。 2)具体来讲:当向HashSet中添加元素的时候,首先计算元素的h 阅读全文
posted @ 2018-02-05 14:08 木土aaa 阅读(172) 评论(0) 推荐(0) 编辑
 
摘要: 1、说一下java类集2、字符串哈西相等,equals相等吗?反过来呢?3、Spring的工作原理,控制控制反转是怎么实现的,自己写过滤器过滤编码怎么实现4、框架的源码有没有看过5、动态代理是怎么实现的6、action是单实例还是多实例1) Struts2 会对每一个请求,产生一个Action的实例 阅读全文
posted @ 2018-02-05 14:06 木土aaa 阅读(277) 评论(0) 推荐(0) 编辑
 
摘要: 引言 其实本来真的没打算写这篇文章,主要是LZ得记忆力不是很好,不像一些记忆力强的人,面试完以后,几乎能把自己和面试官的对话都给记下来。LZ自己当初面试完以后,除了记住一些聊过的知识点以外,具体的内容基本上忘得一干二净,所以写这篇文章其实是很有难度的。 但是,最近问LZ的人实在是太多了,为了避免重复 阅读全文
posted @ 2018-02-05 14:04 木土aaa 阅读(190) 评论(0) 推荐(0) 编辑
 
摘要: 说到垃圾回收(Garbage Collection,GC),很多人就会自然而然地把它和Java联系起来。在Java中,程序员不需要去关心内存动态分配和垃圾回收的问题,这一切都交给了JVM来处理。顾名思义,垃圾回收就是释放垃圾占用的空间,那么在Java中,什么样的对象会被认定为“垃圾”?那么当一些对象 阅读全文
posted @ 2018-02-05 14:00 木土aaa 阅读(88) 评论(0) 推荐(0) 编辑
 
摘要: 1、#{}和${}的区别是什么? 注:这道题是面试官面试我同事的。 答:${}是Properties文件中的变量占位符,它可以用于标签属性值和sql内部,属于静态文本替换,比如${driver}会被静态替换为com.mysql.jdbc.Driver。#{}是sql的参数占位符,Mybatis会将s 阅读全文
posted @ 2018-02-05 13:51 木土aaa 阅读(150) 评论(0) 推荐(0) 编辑
 
摘要: 本篇主要讲述IO相关的内容,主要包括:与IO相关的简单的历史背景知识;Java IO的简单分类;与IO设计相关的两个模式;同时列举几个简单的例子;分析其中几个实现的源代码;最后给大家一些简单扩展的例子。治学先治史,下面我们先从简单的历史开始吧! 一、 历史背景 “对语言设计人员来说,创建好的输入/输 阅读全文
posted @ 2018-02-05 13:48 木土aaa 阅读(198) 评论(0) 推荐(0) 编辑
 
摘要: 下面是Spring 5.0.0 SHAPSHOT文档的中文目录(带超链接即表示已翻译): I. Spring框架概述 1. 开始使用Spring 2. Spring框架介绍 2.1. 依赖注入和控制反转 2.2. 各个模块 2.2.1. 核心容器 2.2.2. AOP 和 设备使用 2.2.3. 消 阅读全文
posted @ 2018-02-05 13:45 木土aaa 阅读(952) 评论(2) 推荐(0) 编辑
 
摘要: 一、前言 多线程怎么防止竞争资源,即防止对同一资源进行并发操作,那就是使用加锁机制。这是Java并发编程中必须要理解的一个知识点。其实使用起来还是比较简单,但是一定要理解。 有几个概念一定要牢记: 加锁必须要有锁 执行完后必须要释放锁 同一时间、同一个锁,只能有一个线程执行 二、synchroniz 阅读全文
posted @ 2018-02-05 13:41 木土aaa 阅读(125) 评论(0) 推荐(0) 编辑
 
摘要: 一、前言 ThreadLocal这个对象就是为多线程而生的,没有了多线程ThreadLocal就没有存在的必要了。可以将任何你想在每个线程独享的对象放置其中,并在任何时候取出来。 二、基本用法 ThreadLocal的使用方法其实特别简单: 下面展示一个样例: 这是一个使用模板,可以根据具体情况来做 阅读全文
posted @ 2018-02-05 13:40 木土aaa 阅读(146) 评论(0) 推荐(0) 编辑
 
摘要: 这是看过的第一个jdk源码(从立下目标以来):TreeMap。说实话断断续续的看了有好几天了,我觉得我犯了一个错误,就像一开始说的那样,我打算完完全全看懂TreeMap关于红黑树的实现方式,后来我想了想,相对于花费这个对我的收益并不是特别大,而且看的过程中也有很多困惑,虽然我知道它每一步在做什么,但 阅读全文
posted @ 2018-02-05 13:35 木土aaa 阅读(146) 评论(0) 推荐(0) 编辑
 
摘要: 可以毫不夸张的说,HashMap是容器类中用的最频繁的一个,而Java也对它进行优化,在jdk1.7及以前,当将相同Hash值的对象以key的身份放到HashMap中,HashMap的性能将由O(1)下降到O(N),所以jdk1.8将相同Hash值的key以红黑树的形式进行存储。 一、简单理解 1. 阅读全文
posted @ 2018-02-05 13:34 木土aaa 阅读(124) 评论(0) 推荐(0) 编辑
 
摘要: Socket是Java网络编程的基础,了解还是有好处的, 这篇文章主要讲解Socket的基础编程。Socket用在哪呢,主要用在进程间,网络间通信。本篇比较长,特别做了个目录: 一、Socket通信基本示例 二、消息通信优化 2.1 双向通信,发送消息并接受消息 2.2 使用场景 2.3 如何告知对 阅读全文
posted @ 2018-02-05 13:32 木土aaa 阅读(106) 评论(0) 推荐(0) 编辑