【Java】留下没有基础眼泪的面试题
程序在执行时,多线程是CPU通过给每个线程分配CPU时间片来实现的,时间片是CPU分配给每个线程执行的时间,因时间片非常短,所以CPU通过不停地切换线程执行。 无锁并发编程。多线程竞争时,会引起上下文切换,所以多线程处理数据时,可以用一些办法来避免使用锁,如将数据的ID按照Ha…
【Java】几道让你拿offer的面试题
之前在刷博客的时候,发现一些写得比较好的博客都会默默收藏起来。最近在查阅补漏,有的知识点比较重要的,但是在之前的博客中还没有写到,于是趁着闲整理一下。 前阵子在群上看有人在讨论关于Integer的true或者false问题,我本以为我已经懂了这方面的知识点了。但还是做错了,后来…
HTTP2和HTTPS来不来了解一下?
最近在看博客的时候,发现有的面试题已经考HTTP/2了,于是我就顺着去了解一下。 下面就简单聊聊他们三者的区别,以及整理一些必要的额外知识点。 试想一下:请求一张图片,新开一个连接,请求一个CSS文件,新开一个连接,请求一个JS文件,新开一个连接。HTTP协议是基于TCP的,T…
Java多线程打辅助的三个小伙子
之前学多线程的时候没有学习线程的同步工具类(辅助类)。ps:当时觉得暂时用不上,认为是挺高深的知识点就没去管了.. 在前几天,朋友发了一篇比较好的Semaphore文章过来,然后在浏览博客的时候又发现面试还会考,那还是挺重要的知识点。于是花了点时间去了解一下。 简单来说:Cou…
数据库两大神器【索引和锁】
索引和锁在数据库中可以说是非常重要的知识点了,在面试中也会经常会被问到的。 表经常进行INSERT/UPDATE/DELETE操作就不要建立索引了,换言之:索引会降低插入、删除、修改等维护任务的速度。 索引需要占物理和数据空间。 为什么说索引会降低插入、删除、修改等维护任务的速…
学习JVM是如何从入门到放弃的?
JVM在准备面试的时候就有看了,一直没时间写笔记。现在到了一家公司实习,闲的时候就写写,刷刷JVM博客,刷刷电子书。 能够知道JVM是什么,为我们干了什么,具体是怎么干的。能够理解到一些初学时不懂的东西 我们在初学的时候肯定用过javac来编译.java文件代码,用过java命…
Java面试前需要了解的东西
上一篇写了自己面试的经历和一些在面试的时候遇到的题目(笔试题和面试题)。 我在面试前针对Java基础也花了不少的时间,期间也将自己写过的博文粗略地刷了一遍,同时也在网上找了不少比较好的资料(部分是没看完的)。在这里给大家分享一下~~~ 这是我刷完自己写过的笔记写的一篇文章导航,…
广州三本找Java实习经历
这阵子跑去面试Java实习生啦~~~我来简单介绍一下背景吧。 针对的是中小公司.. 可能投递的公司是有重复的,可能我投递的意向更多偏向于离家里比较近的,并不是全部投应届/实习(其中1-3年的也投了)。 就上面所投和简历的情况,我拿到了5份面试机会。 这篇文章其实主要是记录一下自…
Linux网络管理
这篇主要讲解在Linux下网络的管理。 在网络底层也支持Ethernet、Token Ring、ATM、PPP(PPPoE)、FDDI、Frame Relay等网络协议。 这些网络协议是Linux内核提供的功能,具体的支持情况由内核编译参数决定。 桥接模式的虚拟机,就像一个在路…
Linux进程管理
这篇主要讲解在Linux下进程的管理。 每个用户均可同时运行多个程序。为了区分每一个运行的程序,Linux给每个进程都做了标识,称为进程号(process ID),每个进程的进程号是唯一的。 Linux 给每个进程都打上了运行者的标志,用户可以控制自己的进程:给自己的进程分配不…
Linux用户和权限管理看了你就会用啦
没想到上一篇能在知乎获得千赞呀,Linux也快期末考试了,也有半个月没有写文章了。这篇主要将Linux下的用户和权限知识点再整理一下。 账户实质上就是一个用户在系统上的标识。 超级用户账户(或管理员账户):在系统上的任务是对普通用户和整个系统进行管理。 主组(初始组):用户登录…
Spring AOP就是这么简单啦
没有学Spring AOP之前,我们就可以使用代理来完成。 Spring AOP默认是使用JDK动态代理,如果代理的类没有接口则会使用CGLib代理。 JDK在创建代理对象时的性能要高于CGLib代理,而生成代理对象的运行性能却比CGLib的低。 看到这里我们就应该知道什么是S…
Spring IOC知识点一网打尽!
本来想的是刷完《Spring 实战 (第4版)》和《精通Spring4.x 企业应用开发实战》的IOC章节后来重新编写一篇IOC的文章的,看了一下之前已经写过的入门系列Spring入门这一篇就够了和Spring【依赖注入】就是这么简单。最主要的知识点都已经讲过了,所以感觉就没必…
工厂模式理解了没有?
工厂模式我个人认为其实比较难理解的,如果有接触过|听过|见过该模式的同学很可能就会想:我自己new一个对象出来就好了,简单快捷。用得着你这个工厂模式吗?搞一个工厂出来还要写一大堆的代码呢~ 网上的很多资料都是在阐述着:工厂模式的好处就是解耦。相信大家对解耦这个词也不陌生,那解耦…
单例模式你会几种写法?
本来打算没那么快更新的,这阵子在刷Spring的书籍。在看Spring的时候又经常会看到“单例”,“工厂”这些字样。 那我们想想既然一个类中只能创建一个实例了,那么可以说这是跟类的状态与对象无关的了。 主要由于设计层面上的问题,Struts2是基于Filter拦截类的,ognl…
JDK10都发布了,nio你了解多少?
本来我预想是先来回顾一下传统的IO模式的,将传统的IO模式的相关类理清楚(因为IO的类很多)。 但是,发现在整理的过程已经有很多优秀的文章了,而我自己来整理的话可能达不到他们的水平。并且传统的IO估计大家都会用,而NIO就不一定了。 而NIO对于我来说可以说是挺陌生的,在当初学…
看完这篇Linux基本的操作就会了
这个学期开了Linux的课程了,授课的老师也是比较负责任的一位。总的来说也算是比较系统地学习了一下Linux了~~~ 相信大部分人的PC端都是用Windows系统的,那我们为什么要学习Linux这个操作系统呢???Windows图形化界面做得这么好,日常基本使用的话,学习成本几…
包装模式就是这么简单啦
其实无论是代理模式还是装饰模式。本质上我认为就是对原有对象增强的方式~ 很多时候我们可能对Java提供给我们的对象不满意,不能满足我们的功能。此时我们就想对Java原对象进行增强,能够实现我们想要的功能就好~ 最简单的方式就是继承父类,子类扩展来达到目的。虽然简单,但是这种方式…
给女朋友讲解什么是代理模式
多线程就先告一段落了,昨天写完多线程,本来打算是看IO的知识点的,后来看了一下IO的几种模型,又翻了一下《Java编程思想》。不知道从哪下手~~ 看到这里你以为我要讲装饰模式了么?不是,今天我们来讲讲什么是代理模式(就是这么皮,装饰模式明天讲吧~)。 由标题可知,这篇文章是写给…
多线程之死锁就是这么简单
本篇主要是讲解死锁,这是我在多线程的最后一篇了。主要将多线程的基础过一遍,以后有机会再继续深入! 在Java中使用多线程,就会有可能导致死锁问题。死锁会让程序一直卡住,不再程序往下执行。我们只能通过中止并重启的方式来让程序重新执行。 线程A和线程B都继续执行,此时线程A需要ri…