• Linux 面试题

    Linux面试题如今程序员生产的代码99%都部署在linux环境下,代码发现缺陷,程序员的第一反应是到 Linux 上拉日志下来看。程序员不是运维,不需要掌握非常多复杂命令。推荐终端工具SecureCRTxshell常用命令(重要)ls/ll、cd、mkdir、rm-rf、cp、mv、ps -ef ...

    设计模式

    有一些重要的设计原则在开篇和大家分享下,这些原则将贯通全文:面向接口编程,而不是面向实现。这个很重要,也是优雅的、可扩展的代码的第一步,这就不需要多说了吧。职责单一原则。每个类都应该只有一个单一的功能,并且该功能应该由这个类完全封装起来。对修改关闭,对扩展开放。对修改关闭是说,我们辛辛苦苦加班写出来...

    JVM 面试题

    JVM 的主要组成部分及其作用类加载器(ClassLoader)运行时数据区(Runtime Data Area)执行引擎(Execution Engine)本地库接口(Native Interface)组件的作用: 首先通过类加载器(ClassLoader)会加载类文件到内存,Class load...

    多线程面试题

    多线程面试题临界资源临界资源是一次仅允许一个进程使用的共享资源。各进程采取互斥的方式,实现共享的资源称作临界资源。属于临界资源的硬件有,打印机,磁带机等;软件有消息队列,变量,数组,缓冲区等。诸进程间采取互斥方式,实现对这种资源的共享。临界区:每个进程中访问临界资源的那段代码称为临界区(critic...

    并发基础

    并发基础JMM(Java 内存模型)原子性(Atomictiy)原子性是指一个操作是不可中断的。即使是在多个线程一起执行的时候,一个操作一旦开始,就不会被其他线程干扰。可见性(Visibility)可见性是指当一个线程修改了某一个共享变量的值时,其他线程能否立即知道这个修改。缓存优化,硬件优化,指令...

    集合框架面试知识点

    集合框架面试题和解析为什么要设计出迭代器迭代器本质是一种设计模式,为了解决为不同的集合类提供统一的遍历操作接口。List、Set、Map 之间的区别List1.可以允许重复的对象。2.可以插入多个null元素。3.是一个有序容器,保持了每个元素的插入顺序,输出的顺序就是插入的顺序。4.常用的实现类有...