Interview
文章平均质量分 67
DoUUnderstand
这个作者很懒,什么都没留下…
展开
-
TCP和UDP的区别
UPD和TCP UDP是面向无连接的,不需要建立连接,速度快。但是容易丢包 但是因为无连接,是不可靠协议。 只管发报,但是每个数据报的大小限制在64K内。 UDP就像对讲机TCP是面向连接,建立连接,形成传输数据的通道。 在连接中进行大数据量传输 通过三次握手完成连接,是可靠协议 必须建立连接,否则效率会稍低 TCP就像打电话原创 2017-04-07 16:33:05 · 1008 阅读 · 0 评论 -
JVM方面相关面试总结
Java虚拟机有了解么?先讲讲它的内存模型吧。Java虚拟机规范中将Java运行时数据分为六种。1.程序计数器:是一个数据结构,用于保存当前正常执行的程序的内存地址。Java虚拟机的多线程就是通过线程轮流切换并分配处理器时间来实现的,为了线程切换后能恢复到正确的位置,每条线程都需要一个独立的程序计数器,互不影响,该区域为“线程私有”。2.Java虚拟机栈:线程私有的,与线程生命周期相同...原创 2017-09-10 20:54:33 · 1058 阅读 · 0 评论 -
Java版本 排序算法总结
对排序算法总结,考研时本来很熟悉,过段时间很多细节又忘记了,写篇blog总结一下。O(nlogn)首先当n较大,则应采用时间复杂度为O(nlogn)的排序方法:快速排序、堆排序或归并排序。 快速排序:是目前基于比较的内部排序中被认为是最好的方法,当待排序的关键字是随机分布时,快速排序的平均时间最短;快速排序Quick SortArrays.sort()方法底层就用的快速排序和插入排序,对于元素少的原创 2017-10-08 16:36:48 · 826 阅读 · 0 评论 -
Java Collections Framework - 深入HashMap
HashMap作为面试中被问道频率最高的问题,这篇文章就已面试的角度来说明HashMap的底层原理。HashMap原理HashMap的初始值都是Null的,储存的都是键值对(Entry)众所周知,HashMap是一个用于存储Key-Value键值对的集合,每一个键值对也叫做Entry。这些个键值对(Entry)分散存储在一个数组当中,这个数组就是HashMap的主干。HashM...原创 2017-05-25 13:28:01 · 884 阅读 · 0 评论 -
Java基础方面面试总结
JRE和JDK的区别?Object有哪些公用方法?finalize()方法为什么Object类里面会有wait和notify这两个方法finalString类为什么是final的关于String.valueOf()和.toString的区别Override和Overload的含义以及区别基本类型大小 默认初始化值 数据类型转换int类型转换成String类型Java方法...原创 2017-09-11 08:56:08 · 1695 阅读 · 0 评论 -
String , StringBuffer 和 StringBuilder 的联系与区别
String 类String的值是不可变的,这就导致每次对String的操作都会生成新的String对象,不仅效率低下,而且大量浪费有限的内存空间。 String a = “a”; //假设a指向地址0x0001 a = “b”;//重新赋值后a指向地址0x0002,但0x0001地址中保存的”a”依旧存在,但已经不再是a所指向的,a 已经指向了其它地址。 因此String的操作都是改变原创 2016-10-10 17:56:04 · 889 阅读 · 0 评论 -
Java多线程并发方面面试总结
进程和线程的区别:进程:每个进程都有独立的代码和数据空间(进程上下文),进程间的切换会有较大的开销,一个进程包含1–n个线程。线程:同一类线程共享代码和数据空间,每个线程有独立的工作内存和程序计数器(PC),线程切换开销小。线程间还可以通过共享的主内存来进行值的传递。 多进程是指操作系统能同时运行多个任务(程序)。 多线程是指在同一程序中有多个顺序流在执行。在java中要想实现多线程,有三种手段原创 2017-09-11 10:11:14 · 1262 阅读 · 0 评论 -
Java集合方面面试题总结
ArrayList list = new ArrayList(20);中的list扩充几次?ArrayList的构造函数总共有三个: (1)ArrayList()构造一个初始容量为 10 的空列表。 (2)ArrayList(Collection< ? extends E> c)构造一个包含指定 collection 的元素的列表,这些元素是按照该 collection 的迭代器返回它们的顺序排原创 2017-09-18 12:17:35 · 1137 阅读 · 0 评论 -
JavaSE equlas和==的区别
Java 语言里的 equals方法其实是交给开发者去覆写的,让开发者自己去定义满足什么条件的两个Object是equal的。所以我们不能单纯的说equals到底比较的是什么。你想知道一个类的equals方法是什么意思就是要去看定义。原创 2017-03-17 14:47:15 · 1720 阅读 · 0 评论 -
计算机网络部分面试题
从输入网址到显示网页,过程 ?客户端发起请求 -> DNS域名解析 –> 发起TCP的三次握手 –> 建立TCP连接后发起http请求 –> 服务器响应http请求,浏览器得到html代码 –> 浏览器解析html代码,并请求html代码中的资源(如JavaScript、css、图片等) –> 浏览器对页面进行渲染呈现给用户。详细了解:在浏览器中输入www.baidu.com后执行的全部过程TCP三原创 2017-09-12 11:14:00 · 1329 阅读 · 0 评论 -
TCP/IP 三次握手和四次挥手
TCP TCP是面向连接的运输层协议,它提供可靠交付的、全双工的、面向字节流的点对点服务。HTTP协议便是基于TCP协议实现的。(虽然作为应用层协议,HTTP协议并没有明确要求必须使用TCP协议作为运输层协议,但是因为HTTP协议对可靠性的的要求,默认HTTP是基于TCP协议的。若是使用UDP这种不可靠的、尽最大努力交付的运输层协议来实现HTTP的话,那么TCP协议的流量控制、可靠性保障机制等等功原创 2017-04-07 16:28:54 · 1265 阅读 · 0 评论 -
画重点,Java方法的参数到底是值传递还是引用传递?
最近做Java联系时候,碰到了关于Java值传递的习题,递归函数调用的时候什么时候传值的疑问,感觉还是很容易弄混淆其中的定义的。看了一些blog和知乎上的回答,在这里总结一下。java中方法参数传递方式是按值传递。所谓值传递,就是将实际参数值的副本(复制品)传入方法内,而自己本身不会受到任何影响。 如果参数是基本类型,传递的是基本类型的字面量值的拷贝。 如果参数是引用类型,传递的是该参量所引用的原创 2017-09-18 22:50:20 · 871 阅读 · 0 评论 -
在浏览器中输入www.baidu.com后执行的全部过程
事件顺序(1) 浏览器获取输入的域名www.baidu.com (2) 浏览器向DNS请求解析www.baidu.com的IP地址 (3) 域名系统DNS解析出百度服务器的IP地址 (4) 浏览器与该服务器建立TCP连接(默认端口号80) (5) 浏览器发出HTTP请求,请求百度首页 (6) 服务器通过HTTP响应把首页原创 2017-04-08 20:14:22 · 8677 阅读 · 2 评论 -
由一道题了解Happens - Before
首先来看一道题目:public class Test1 { private int a=1, b=2; public void foo(){ // 线程1 a=3; b=4; } public int getA(){ // 线程2 return a; } public int getB(){ //原创 2017-09-07 20:32:03 · 431 阅读 · 0 评论 -
Java后台面试题 总结(合集)(持续更新)
看了很多面经,Java后台的知识点太多太杂,想写一篇知识点的总结,把繁杂的知识点连成网。也是对自己的一个总结。 Java基础方面面试总结 Java多线程并发方面面试总结Java集合方面面试总结 JVM方面相关面试总结技术框架部分面试题计算机网络部分面试题...原创 2017-09-10 19:36:14 · 3514 阅读 · 0 评论