更多相关推荐
注:此博客不再更新,所有最新文章将发表在个人独立博客limengting.site。分享技术,记录生活,欢迎大家关注参考博客:HashMap在JDK1.8后新增的红黑树结构HashMap源码:packagejava.util;importjava.io.IOException;importjava.io.InvalidObjectException;importjava.io.Serializab...
根据锁的特性来进行分类1、乐观锁和悲观锁悲观锁:对于一个数据的并发操作,悲观锁认为自己在使用数据的时候一定会有别的线程来修改数据,因此就要先加锁,确保数据不会被其他线程修改。synchronized关键字和Lock的实现类都是悲观锁。乐观锁:自己在使用数据的时候不会有其他线程来修改数据的,因此不会添加锁,只是在更新数据之前去判断这个数据是否被修改。如果已经被修改,那就根据不同的实现方式执行不同的操...
前言 上一篇文章我们介绍了在面试中操作系统有关线程和进程常见的面试题。这篇文章我们继续给大家介绍常见的问题。这篇文章将给大家介绍操作系统中系统相关的问题。面试题及参考答案1、请你说一说Linux虚拟地址空间 为了防止不同进程同一时刻在物理内存中运行而对物理内存的争夺和践踏,采用了虚拟内存。 虚拟内存技术使得不同进程在运行过程中,它所看到的是自己独自占有了当前系统的4G内存。所有进程共享同一物...
*垃圾收集器*单线程:*serial垃圾回收器(新生代)*serialold垃圾回收器(老年代)*多线程:*ParNew(新生代)*CMS(老年代)*G1*采用ParNew+CMS或多或少会产生stoptheworld影响;*统一收集新生代和老年代,可以控制stoptheword的时间**单线程的垃圾回收器,垃圾回收过程都会stopworld;*多线程的不管是新生代和老年代GC都会stopworl...
因为静态方法可以不通过对象进行调用,可以直接类名.静态方法,所以静态方法里不可以直接调用或访问费静态成员变量。...
为什么被final修饰:1.被final修饰的类不可以被继承,所以不会被其他的类改变,这样更加安全。2.String是共享在常量池中的,Stringstr=“abc”,chardata[]={‘a’‘b’,‘c’}是等价的,他们都放在了字符串的常量池中。衍生问题:java有两种创建字符串的方式:Stringstr1="java";Stringstr2=newString("java");用双引号创...
1、日本についてどう思いますか。日本の印象はどうですか。2、日本についてどんな事を知っていますか。日本についてなんか知っていますか。3、日本へ行ったことがありますか。4、日本へ行きたいですか。5、日本はすきですか。日本のどうこが好きですか。 6、日本の何に興味がありますか。日本のどんなことに興味がありますか。どうして。7、日本に行ったか何がしたいですか。8、どうしてXXしたいんですか。9、どうして...
第一番1、自己紹介してください。2、お名前は。お名前を教えていただけますか。3、出身はどちらですか。どちらの出身ですか。4、大学はどちらですか。どこの大学を出ましたか。5、 何時卒業しましたか。6、専攻は何ですか。7、何が得意ですか。得意なことは何ですか。8、趣味はですか。ご趣味は。9、今何をしていますか。...
volatile是干啥的访问寄存器要比访问内存要块,因此CPU会优先访问该数据在寄存器中的存储结果,但是内存中的数据可能已经发生了改变,而寄存器中还保留着原来的结果。为了避免这种情况的发生将该变量声明为volatile,告诉CPU每次都从内存去读取数据。一个参数可以即是const又是volatile的吗?可以,一个例子是只读状态寄存器,是volatile是因为它可能被意想不到的被改变,是const...
一.CountDownLatch用法CountDownLatch类位于java.util.concurrent包下,利用它可以实现类似计数器的功能。比如有一个任务A,它要等待其他4个任务执行完毕之后才能执行,此时就可以利用CountDownLatch来实现这种功能了。CountDownLatch类只提供了一个构造器:publicCountDownLatch(intcount){};//参数coun...
又是一天的宝库啊~常见关键字总结常见关键字两个面试问题面试问题一:typedef#define的区别1、可以用其他类型说明符对宏型名进行扩展,但对于typesef所定义的类型名不可以。2、连续几个变量声明中,用typede定义的类型能够保证声明中所有变量为同一类型。面试问题二:staticextern的区别和联系static:定义/声明一个内部函数/变量extern:定义/声明一个外部函数/变量修...
简单描述一下IoC(inversionofcontrol)的理解??一个类需要用到某个接口的方法,我们需要将类A和接口B的实现关联起来,最简单的方法是类A中创建一个对于接口B的实现C的实例,但这种方法显然两者的依赖(Dependency)太大了,而IoC的方法是只类A中定义好用于关联接口B的实现方法,将类A,接口B和接口B的实现C放入IoC的容器(Container)中,通过一定的配置由路由配置容...
问题:@TestpublicvoidstringTest(){Stringstr1="hello";Stringstr2="hello";System.out.println("str1.equals(str2):"+str1.equals(str2));System.out.println("str1==str2:"+(str1==str2));}//consolestr1.equals(str...
递归方式:publicclassBS{publicintbinarySearch(intelem,int[]array,intlow,inthigh){if(low>high){return-1;}intmiddle=(low+high)/2;if(array[middle]==elem){returnmiddle;}if(array[middle]<elem){//找右边return...
通过前面几个课时的学习,相信你对JVM的理论及实践等相关知识有了一个大体的印象。而本课时将重点讲解JVM的排查与优化,这样就会对JVM的知识点有一个完整的认识,从而可以更好地应用于实际工作或者面试了。我们本课时的面试题是,生产环境如何排查问题?回答:如果是在生产环境中直接排查JVM的话,最简单的做法就是使用JDK自带的6个非常实用的命令行工具来排查。它们分别是:jps、jstat、jinfo、jm...
今日内容了解什么是垃圾回收掌握垃圾会回收的常见算法学习串行、并行、并发、G1垃圾收集器学习GC日志的可视化查看1、什么是垃圾回收?程序的运行必然需要申请内存资源,无效的对象资源如果不及时处理就会一直占有内存资源,最终将导致内存溢出,所以对内存资源的管理是非常重要了。1.1、C/C++语言的垃圾回收在C/C++语言中,没有自动垃圾回收机制,是通过new关键字申请内存资源,通过delete关键字释放内...
一、CSS1、盒模型W3C盒模型和IE盒子,注意说区别。2、隐藏元素方法一:display:none;方法二:visibility:hidden;方法三:opacity:0;方法四:z-index3、实现三角width:0px;height:0px;border:三边透明,一边有颜色4、轮播图一种是利用js实现的,一种是利用animation。这里要注意的是从最后一张到第一张的过度怎么样才能实现更...
C++11相关问题(这部分看公司,有些公司是不用C++11标准的)1.有用到过C++11吗?比较了解哪些新特性2.智能指针是什么?3.auto_ptr为什么被废弃了?智能指针又是如何保证安全性的4.RAII是什么?(这个问题面试没问,但了解以后可以额外扩展一下加深面试官印象)RAII,也称为“资源获取就是初始化”,是c++等编程语言常用的管理资源、避免内存泄露的方法。它保证在任何情况下,使用对象时...
操作系统C++说白了就是和操作系统打交道,不了解操作系统永远无法发挥C++的优势,因此操作系统在C++开发中尤为重要。1.讲一下C++内存模型(十分重要,十个面试九个问)2.什么是内存泄漏?怎么防止?有用过什么检测工具吗?3.堆和栈的区别4.假设有一个classA,在函数里执行Aa=newA()的话,在哪个区?*(不理解分区容易出错)5.什么是栈溢出?内存越界又是什么?6.进程和线程的区别(同样很...
计算机网络重点:TCP/IPUDPHTTPHTTPS1.模型问题OSI网络七层模型(概念型框架)计算机网络五层模型TCP/IP四层模型模型一定要记得,每层大致的作用和有关协议也得了解ARP,TCP,IP,HTTP,HTTPS,ICMP,DNS这些协议在哪层干什么用的也要了解。网上资料很多,不懂就查,面试中的问题不要求说全但要保证能说出来。2.TCPUDP的区别答案在下面3.TCP如何保证传输稳定,...
STL和数据结构与算法1.STL了解吗?常用哪些容器2.List和vector有什么区别底层:List带有头结点的双向链表,存储在内存中不连续。vector是类似于数组的顺序表,存储在内存中连续。随机访问:vector支持(O(1)),List不支持。插入:List效率为O(1),因为只用更改该节点的前后指针。vector为O(n),因为插入vector要移动元素,并且有可能需要再次扩容。内存...
网站搭建发布的整个流程第一步,我们需要为自己的网站,注册购买一个域名。这个域名就好像身份证一样,这个就是你网站的身份,比方,我们都知道,百度的域名是,www.baidu.com,域名也可以是自己喜欢的字母与数字的组合。但是需要注意的是,域名如果是别人已经购买了的,不管是否已经在使用,这个你都是没有办法进行购买与注册的。这个是网站域名的唯一性,就好比我们的身份证号一样,具有唯一识别性。第二步,就是购...
【OSPF】网络面试100问(四)31.当你使用计算机上网浏览www.baidu.com网站时,你的计算机可能会依次发送哪些类型的报文?1.终端浏览器访问www.baidu.com首先会查找浏览器内部缓存,然后查找本地host文件,再到本地DNS服务器。如果未找到,就请求网关设备。(递归查找)2.在请求网关设备时首先需要网关设备的MAC地址,终端向网关设备发出ARP请求报文,请求网关设备的MAC地...
优点1.速度快,因为数据存在内存中2.支持丰富数据类型,string,list等3.支持事物,操作都是原子性的,要么执行,要么不执行缺点由于是内存数据库,所以单台机器的存储量与机器本身的内存有关,如果内存增长过快,需要定期删除数据...
字符串处理中的常见问题总结(一)C语言中字符串处理方面的问题非常普遍,常见问题如:查找,替换,复制,移动,插入,删除,排序,单词统计,字符串类型与其他类型(整形,实型,长整形)之间的相互转换等。一、 字符串的查找C语言库函数<string.h>中有很多有关的函数,如:intstrcpm(char*src,char*dest);intstrncpm(char*,cha...
1、css的定位有哪些方式?以及用法position在英文中表示“位置”的意思 它主要是用于实现对元素的定位在CSS中定位分为三种:position:fixed 固定定位position:relatvie 相对定位position:absolute 绝对定位position:static 无特殊定位 (默认值)。注意: 在使用定位属性时,一定要配合...
缓存相关:如何提高缓存命中率?如何对缓存进行颗粒化?
服务器相关:1、nginx负载均衡有哪些?如果其中一台服务器挂掉,报警机制如何实现?
2、不优化前提下,apache一般最大连接数为?nginx一般最大连接数为?mysql每秒insert?select?update?delete?
3、nginx设置缓存js、css、图片等信息,缓存的实现原理是?
4、给你一个url,在nginx配置一下re...
老规矩(呸,哪里来的规矩),先附上链接:https://juejin.im/post/5e8fe74251882573744c5fbeCSRF概念CSRF(Cross-siterequestforgery)跨站请求伪造:攻击者诱导受害者进入第三方网站,在第三方网站中,向被攻击网站发送跨站请求。利用受害者在被攻击网站已经获取的注册凭证(cookies等),绕过后台的用户验证,达到冒充用户对被攻击的网...
当把对象加入HashSet的时候,HashSet会先计算对象的hashCode值来判断对象加入的位置,同时与其他加入的对象的hashcode值作比较,如果没有相同的,则加入该对象,如果有相同的hashcode值,则调用equals方法判断是不是同一个对象,如果不是则加入;如果相同,则加入不成功;...
1.介绍一下Java运行时内存区答:在jdk1.6及之前,java内存区是分为堆区,方法区(运行时常量)也叫永久代,直接内存区(不属于运行时内存区),这是线程共享的,线程私有的是虚拟机栈,本地方法栈,程序计数器,jdk1.7将方法区移入了堆区,1.8直接将永久代移除,增加了元空间,是放在直接内存区的。2.程序计数器答:程序计数器是java内存中唯一一个不会出现OutOfMemoryError的区域...
深信服校园招聘安全攻防A卷1、谈谈在WEB类安全问题的应急处置过程中web日志溯源攻击路径的思路?在对WEB日志进行安全分析时,可以按照下面两种思路展开,逐步深入,还原整个攻击过程。首先确定受到攻击的时间范围,以此为线索,查找这个时间范围内可疑的日志,根据可疑ip、攻击特征等进一步排查(WEB日志会记录客户端对WEB应用的访问请求,这其中包括正常用户的访问请求和攻击者的恶意行为。通过大量的分析,我...
jvisualvm分析java应用内存需要远程服务上启动jstatd服务(jmx也有内存监控信息,不过没有jstatd内存信息详细),网上各种相关文章大部分都是介绍的简单模糊,很多要注意的地方没介绍,真正按着操作的话,各种连不上没反应,让人着急!下面分享个我在项目中分析内存时服务器上启动jstatd服务的脚本工具,自动安装jstatd环境,能够快速启动关闭jstatd服务。一些需要注意和容易出错的...
本文为博主原创,未经许可严禁转载。本文链接:https://blog.csdn.net/zyooooxie/article/details/1143800072年前分享过一期软件测试的面试题;今年有些想法,想换工作了,就重新整理了些,再做个分享。个别答案仁者见仁个人博客:https://blog.csdn.net/zyooooxie性能测试关注指标答:【被测系统的实际性能状况】TPS、事务平均响应...
*Apache,nginx区别1.Nginx比Apache更轻量级,使用更少的内存及资源2.Nginx有更好的抗并发能力,apache是同步多进程模型,一个连接对应一个进程;nginx是异步的,多个连接(万级别)可以对应一个进程3.Nginx除了可以提供web服务还可以提供反向代理服务和邮件服务4.Nginx静态处理性能比Apache高3倍以上5.apache适合处理动态请求,所以现在一般前端用n...
环境云服务器系统:centos7系统防火墙关闭,云服务器安全组开放所有tcp端口(如果没有足够的端口权限会连接失败,最后会介绍)openjdk1.81随便创建了个可以运行的java程序打包成jar包springboot_test-0.0.1-SNAPSHOT.jar2上传到云服务器上运行jmx监控启动参数如下java-Djava.rmi.server.hostname=xxx.x.xxx.xxx-...
Nginx服务器以及其他服务器横向对比微软的IISIIS(Internet信息服务)英文InternetInformationServer的缩写。它是微软公司主推的服务器,不过必须要服务器是Windows系统的.我们都知道Windows系统漏洞非常多,所以用它来做web服务器真的非常不安全.很少的企业会选择来做服务器的.优点是比较灵活,简单操作.Apache阿帕奇服务器可以说是世界上排行使用第一的...
死锁问题(二)如何避免死锁的发生?通常使用银行家算法,原理是通过每次进程申请资源的时候都会检测这个操作是否安全,但会增加系统开销。在申请资源时进行判断,若该过程会产生死锁,则不分配给进程资源。银行家算法的思想:当进程向系统第一次申请资源的时候,系统会检测该进程需要的最大的资源数,如果系统资源≥进程需要的最大资源数则给其分配资源,否则不;当进程第n次(n>1)向系统申请资源的时候,如果系统剩下...
1.英文自我介绍2.会用英语问你喜欢啥、家乡、学校啥的,主要考你的英文表达能力。3.python与Java的区别。区别:1.Python比Java简单,学习成本低,开发效率高2.Java运行效率高于Python,尤其是纯Python开发的程序,效率极低3.Java相关资料多,尤其是中文资料4.Java版本比较稳定,Python2和3不兼容导致大量类库失效5.Java开发偏向于软件工程,团队协同,P...
数据库锁数据库锁出现的原因是为了处理并发问题,因为数据库是一个多用户共享的资源,当出现并发的时候,就会导致出现各种各样奇怪的问题,就像程序代码一样,出现多线程并发的时候,如果不做特殊控制的话,就会出现意外的事情,比如“脏“数据、修改丢失等问题。所以数据库并发需要使用事务来控制,事务并发问题需要数据库锁来控制,所以数据库锁是跟并发控制和事务联系在一起的。事务特性先说事务的特性,要想成为事务,必须满足...
为了提高HashMap的效率,减少数据的碰撞,使数据分布平均,用之前需要用hash值对数组进行求余运算,算出在数组中的位置,这个计算方法是(length-1)&hash,与hash对数组长度求余结果是一样的,这样效率更高,因为2的n次方是1后边n个0,2的n次方-1,就是n个1,所以为了减少数据碰撞,使分布均匀,需要使得hashmap的长度是2的n次方。...
1:HTTP协议定义服务器端和客户端之间文件传输的沟通方式。目前HTTP协议的版本是Http1.1。这个协议已经成为浏览器和Web站点之间的标准。2:当我上网的时候底层是如何进行交互的?当访问者点击一个超链接的时候,将会给浏览器提交一个URL地址。通过这个URL地址,浏览器便知道去链接那个网站并去取得具体的页面文件(也可能是一张图片,一个pdf文件)。HTTP工作的基础就是,连接一个服务器并开始传...
1,到官网下载好tomcat的包官网地址:https://tomcat.apache.org/download-80.cgi2、上传到linux,解压,进入tomcat-8.5.42/conf/tomcat-users.xml添加管理员用户3、进入tomcat-8.5.42/webapps/manager/META-INF/context.xml注释掉下面的内容4、进入tomcat-8.5.42/...
解决问题的思路1.top命令查看该机器的负载状况2.cd/proc/pid查看对应高占用程序的位置3.进入对应程序中查看日志,根据CPU和内存这两个因素分析4.ps-ajxf查看进程及其之下的线程,通过stat查看是否存在D僵尸进程https://blog.csdn.net/gu_study/article/details/81942939...
Java中的小数使用double和float表示,小数属于浮点型(默认为double)。对于float型的值,则要在数字后加f或F,如12.3F,它在机器中占32位,4个字节来存储,表示精度较低。double是64位。那么一个小数在Java中是如何存储的呢?1.Java语言中,float类型数字在计算机中的存储遵循IEEE-754格式标准:(1)一个浮点数有3部分组成:符号位,指数部分e和底数部分...
优化原因环境中部署两个程序:web应用tomcat 10G(webservice服务端,前端web服务)java应用 5G(webservice客户端,socket客户端)之前的设计思路是打算web应用作为前端不做业务处理,后端使用webservice做能力接入。 1天能力处理量大概在150W次到两百万次左右:并发数量web端口在12tps应用端在20tps左右(能力聚合的时候可能会调...
个人推荐的播放武器:亲自使用之后真的牛逼之气使用的是以前版本,画质不行,有点黑白而且不匹配原画质,看着疼眼睛,痛心灵。这款是2020年才出来来的,个人非视频行业能够想到的都有!!!链接附上:链接:https://pan.baidu.com/s/1dpupPyT3hRQZOb5AZu81ag提取码:qdfn复制这段内容后打开百度网盘手机App,操作更方便哦--来自百度网盘超级会员V4的分享链接:ht...
1. 说说你对c和c++的看法,c和c++的区别?第一点就应该想到C是面向过程的语言,而C++是面向对象的语言,一般简历上第一条都是熟悉C/C++基本语法,了解C++面向对象思想,那么,请问什么是面向对象?C和C++动态管理内存的方法不一样,C是使用malloc/free函数,而C++除此之外还有new/delete关键字;(关于malooc/free与new/delete的不同又可以说一大堆,最...
如果回答是:一个遍历,将所有为1的位加起来,基本上要被Pass了! 因为你一旦将这个十进制的数转成二进制你就已经输了,二进制遍历的时间复杂度是O(n),下面介绍一种更高效的位移算法,其计算步骤是:如果一个正整数x与x-1做按位与运算的结果>0,那么就说明这个正整数x的二进制里面包含了一个1,因此可以循环计算,直到x<=0,执行计算的次数就是1的个数。 举个例子:11的二进制是:...
因为我从业时间尚短,学的东西还是很浅显的,面试的大佬们一问我,就卡壳了。所以做个汇总。个别答案仁者见仁个人博客:https://blog.csdn.net/zyooooxieGET请求和POST请求的区别提交数据的形式:get请求是请求参数直接跟在url地址后;post请求可以通过表单提交的,请求参数放在body中+在url传递;编码方式:GET只接受ASCII字符,而POST没有限制;提交数据的...
<00>面试题https://www.cnblogs.com/ly2018/p/8572829.html...