摘要: 链接:https://www.nowcoder.com/discuss/142537下午三点视频面:一上来怼jvm和gc1.讲讲jvm运行时数据库区https://blog.csdn.net/strawqqhat/article/details/888078352.讲... 阅读全文
posted @ 2019-03-25 22:47 strawqqhat 阅读(169) 评论(0) 推荐(0) 编辑
摘要: 线程私有的数据区程序计数器: 作用:记录当前线程锁执行到的字节码的行号。字节码解释器工作的时候就是通过改变你这个计数器的值来选取下一条需要执行的字节码指令。 意义:JVM的多线程是通过线程轮流切换并分配处理器来实现的,对于我们来说的并行事实上一个处理器也只... 阅读全文
posted @ 2019-03-25 22:44 strawqqhat 阅读(146) 评论(0) 推荐(0) 编辑
摘要: 找出数组 arr 中重复出现过的元素示例1输入[1, 2, 4, 4, 3, 3, 1, 5, 3]输出[1, 3, 4]function duplicates(arr) { var result = []; arr.forEach(function(elem)... 阅读全文
posted @ 2019-03-25 21:00 strawqqhat 阅读(2161) 评论(0) 推荐(0) 编辑
摘要: 移除数组 arr 中的所有值与 item 相等的元素,直接在给定的 arr 数组上进行操作,并将结果返回示例1输入[1, 2, 2, 3, 4, 2, 2], 2输出[1, 3, 4]链接:https://www.nowcoder.com/questionTermin... 阅读全文
posted @ 2019-03-25 18:33 strawqqhat 阅读(660) 评论(0) 推荐(0) 编辑
摘要: 计算给定数组 arr 中所有元素的总和输入描述:数组中的元素均为 Number 类型示例1输入[ 1, 2, 3, 4 ]输出10不考虑算法复杂度,用递归做: 1 2 3 4 5 6 7 8 9 10 funct... 阅读全文
posted @ 2019-03-25 18:21 strawqqhat 阅读(250) 评论(0) 推荐(0) 编辑
摘要: 链接:https://www.nowcoder.com/discuss/137599目录自我介绍Object类的方法,逐个解释一下(clone,hashCode,equals,wait,finalize,notify)讨论了下堆排序spring ioc/aop手写快排... 阅读全文
posted @ 2019-03-25 14:45 strawqqhat 阅读(91) 评论(0) 推荐(0) 编辑
摘要: TCP和UDP是OSI模型中的运输层中的协议。TCP提供可靠的通信传输,而UDP则常被用于让广播和细节控制交给应用的通信传输。UDP: UDP不提供复杂的控制机制,利用IP提供面向无连接的通信服务。并且它是将应用程序发来的数据在收到的那一刻,立刻按照原样发送到网... 阅读全文
posted @ 2019-03-25 14:45 strawqqhat 阅读(545) 评论(0) 推荐(0) 编辑
摘要: 严格定义下的写法void bubbleSort(int array[], int length){ for(int i=0;iarray[j]) swap(array[j-1],array[j]); } }}void swap(int &a,i... 阅读全文
posted @ 2019-03-25 14:08 strawqqhat 阅读(208) 评论(0) 推荐(0) 编辑
摘要: 目录 Spring的优点什么事DI机制?什么事AOP?AOP框架具有的两个特征:Spring的优点1、降低了组件之间的耦合性,实现了软件各层之间的解耦。2、可以使用容易提供的众多服务,如事务管理,消息服务等。3、容器提供单例模式支持。4、容器提供了AOP技术,利用它很... 阅读全文
posted @ 2019-03-25 13:59 strawqqhat 阅读(198) 评论(0) 推荐(0) 编辑
摘要: Object类一共有13个方法1、clone方法:保护方法,实现对象的浅复制,只有实现了Cloneable接口才可以调用该方法,否则抛出CloneNotSupportedException异常。主要是Java里除了8种基本类型传参数是值传递,其他的对象传参数都是引用传... 阅读全文
posted @ 2019-03-25 11:19 strawqqhat 阅读(1096) 评论(0) 推荐(0) 编辑
#home h1{ font-size:45px; } body{ background-image: url("放你的背景图链接"); background-position: initial; background-size: cover; background-repeat: no-repeat; background-attachment: fixed; background-origin: initial; background-clip: initial; height:100%; width:100%; } #home{ opacity:0.7; } .wall{ position: fixed; top: 0; left: 0; bottom: 0; right: 0; } div#midground{ background: url("https://i.postimg.cc/PP5GtGtM/midground.png"); z-index: -1; -webkit-animation: cc 200s linear infinite; -moz-animation: cc 200s linear infinite; -o-animation: cc 200s linear infinite; animation: cc 200s linear infinite; } div#foreground{ background: url("https://i.postimg.cc/z3jZZD1B/foreground.png"); z-index: -2; -webkit-animation: cc 253s linear infinite; -o-animation: cc 253s linear infinite; -moz-animation: cc 253s linear infinite; animation: cc 253s linear infinite; } div#top{ background: url("https://i.postimg.cc/PP5GtGtM/midground.png"); z-index: -4; -webkit-animation: da 200s linear infinite; -o-animation: da 200s linear infinite; animation: da 200s linear infinite; } @-webkit-keyframes cc { from{ background-position: 0 0; transform: translateY(10px); } to{ background-position: 600% 0; } } @-o-keyframes cc { from{ background-position: 0 0; transform: translateY(10px); } to{ background-position: 600% 0; } } @-moz-keyframes cc { from{ background-position: 0 0; transform: translateY(10px); } to{ background-position: 600% 0; } } @keyframes cc { 0%{ background-position: 0 0; } 100%{ background-position: 600% 0; } } @keyframes da { 0%{ background-position: 0 0; } 100%{ background-position: 0 600%; } } @-webkit-keyframes da { 0%{ background-position: 0 0; } 100%{ background-position: 0 600%; } } @-moz-keyframes da { 0%{ background-position: 0 0; } 100%{ background-position: 0 600%; } } @-ms-keyframes da { 0%{ background-position: 0 0; } 100%{ background-position: 0 600%; } }