第12讲、Java有几种文件拷贝方式哪一种最高效

我在专栏上一讲提到,NIO不止是多路复用,NIO 2也不只是异步IO,今天我们来看看Java IO体系中,其他不可忽略的部分。 今天我要问你的问题是,Java有几种文件拷贝方式?哪一种最高效? 典型回答Java有多种比较典型的文件拷贝实现方式,比如:...

Java核心技术面试精讲

第13讲、谈谈接口和抽象类有什么区别

Java是非常典型的面向对象语言,曾经有一段时间,程序员整天把面向对象、设计模式挂在嘴边。虽然如今大家对这方面已经不再那么狂热,但是不可否认,掌握面向对象设计原则和技巧,是保证高质量代码的基础之一。 面向对象提供的基本机制,对于提高开发、沟通等各方面...

Java核心技术面试精讲

第14讲、谈谈你知道的设计模式

设计模式是人们为软件开发中相同表征的问题,抽象出的可重复利用的解决方案。在某种程度上,设计模式已经代表了一些特定情况的最佳实践,同时也起到了软件工程师之间沟通的“行话”的作用。理解和掌握典型的设计模式,有利于我们提高沟通、设计的效率和质量。 今天我要...

Java核心技术面试精讲

第15讲、synchronized和ReentrantLock有什么区别呢

从今天开始,我们将进入Java并发学习阶段。软件并发已经成为现代软件开发的基础能力,而Java精心设计的高效并发机制,正是构建大规模应用的基础之一,所以考察并发基本功也成为各个公司面试Java工程师的必选项。 今天我要问你的问题是, synchron...

Java核心技术面试精讲

第16讲、synchronized底层如何实现什么是锁的升级、降级

我在上一讲对比和分析了synchronized和ReentrantLock,算是专栏进入并发编程阶段的热身,相信你已经对线程安全,以及如何使用基本的同步机制有了基础,今天我们将深入了解synchronize底层机制,分析其他锁实现和应用场景。 今天我...

Java核心技术面试精讲

第17讲、一个线程两次调用start()方法会出现什么情况

今天我们来深入聊聊线程,相信大家对于线程这个概念都不陌生,它是Java并发的基础元素,理解、操纵、诊断线程是Java工程师的必修课,但是你真的掌握线程了吗? 今天我要问你的问题是,一个线程两次调用start()方法会出现什么情况?谈谈线程的生命周期和...

Java核心技术面试精讲
123457