年度归档: 2024 年

1107 篇文章

009、java面试题_如何实现本地缓存和分布式缓存?
java面试题_如何实现本地缓存和分布式缓存? 如何实现本地缓存和分布式缓存? 缓存(Cache) 是指将程序或系统中常用的数据对象存储在像内存这样特定的介质中,以避免在每次程序调用时,重新创建或组织数据所带来的性能损耗,从而提高了系统的整体运行速度。 以目前的系统架构来说,用户的请求一般会先经过缓存系统,如果缓存中没有相关的数据,就会在其他系统中查询到相应的数据并保存在缓存中,最后返回给调用方。…
008、动态代理是如何实现的?JDK Proxy 和 CGLib 有什么区别?
动态代理是如何实现的?JDK Proxy 和 CGLib 有什么区别? 90% 的程序员直接或者间接的使用过动态代理,无论是日志框架或 Spring 框架,它们都包含了动态代理的实现代码。动态代理是程序在运行期间动态构建代理对象和动态调用代理方法的一种机制。 我们本课时的面试题是,如何实现动态代理?JDK Proxy 和 CGLib 有什么区别? 典型回答 动态代理的常用实现方式是反射。反射机制是…
007、深克隆和浅克隆有什么区别?它的实现方式有哪些?
深克隆和浅克隆有什么区别?它的实现方式有哪些? 使用克隆可以为我们快速地构建出一个已有对象的副本,它属于 Java 基础的一部分,也是面试中常被问到的知识点之一。 我们本课时的面试题是,什么是浅克隆和深克隆?如何实现克隆? 典型回答 浅克隆(Shadow Clone)是把原型对象中成员变量为值类型的属性都复制给克隆对象,把原型对象中成员变量为引用类型的引用地址也复制给克隆对象,也就是原型对象中如果…
006、java面试题_谈谈你对锁的理解?如何手动模拟一个死锁?
java面试题_谈谈你对锁的理解?如何手动模拟一个死锁? 谈谈你对锁的理解?如何手动模拟一个死锁? 在并发编程中有两个重要的概念:线程和锁,多线程是一把双刃剑,它在提高程序性能的同时,也带来了编码的复杂性,对开发者的要求也提高了一个档次。而锁的出现就是为了保障多线程在同时操作一组资源时的数据一致性,当我们给资源加上锁之后,只有拥有此锁的线程才能操作此资源,而其他线程只能排队等待使用此锁。当然,在所…
005、java面试题_synchronized和ReentrantLock
java面试题_synchronized和ReentrantLock synchronized 和 ReentrantLock 的实现原理是什么?它们有什么区别? 在 JDK 1.5 之前共享对象的协调机制只有 synchronized 和 volatile,在 JDK 1.5 中增加了新的机制 ReentrantLock,该机制的诞生并不是为了替代 synchronized,而是在 synchr…
004、java面试题_详解 ThreadPoolExecutor 的参数含义及源码执行流程?
java面试题_详解 ThreadPoolExecutor 的参数含义及源码执行流程? 详解 ThreadPoolExecutor 的参数含义及源码执行流程? 线程池是为了避免线程频繁的创建和销毁带来的性能消耗,而建立的一种池化技术,它是把已创建的线程放入“池”中,当有任务来临时就可以重用已有的线程,无需等待创建的过程,这样就可以有效提高程序的响应速度。但如果要说线程池的话一定离不开ThreadP…
003、java面试题_线程的状态有哪些?它是如何工作的?
java面试题_线程的状态有哪些?它是如何工作的? 线程的状态有哪些?它是如何工作的? 线程(Thread)是并发编程的基础,也是程序执行的最小单元,它依托进程而存在。一个进程中可以包含多个线程,多线程可以共享一块内存空间和一组系统资源,因此线程之间的切换更加节省资源、更加轻量化,也因此被称为轻量级的进程。 当然,线程也是面试中常被问到的一个知识点,是程序员必备的基础技能,使用它可以有效地提高程序…
java面002、试题_HashMap 底层实现原理是什么?JDK8 做了哪些优化?
java面试题_HashMap 底层实现原理是什么?JDK8 做了哪些优化? HashMap 底层实现原理是什么?JDK8 做了哪些优化? HashMap 是使用频率最高的类型之一,同时也是面试经常被问到的问题之一,这是因为 HashMap 的知识点有很多,同时它又属于 Java 基础知识的一部分,因此在面试中经常被问到。 本课时的面试题是,HashMap 底层是如何实现的?在 JDK 1.8 中…
001、java面试题_String 是如何实现的?它有哪些重要的方法?
java面试题_String 是如何实现的?它有哪些重要的方法? String 是如何实现的?它有哪些重要的方法? 几乎所有的 Java 面试都是以 String 开始的,如果第一个问题没有回答好,则会给面试官留下非常不好的第一印象,而糟糕的第一印象则会直接影响到自己的面试结果,就好像刚破壳的小鹅一样,会把第一眼看到的动物当成自己的母亲,即使它第一眼看到的是一只小狗或小猫,也会默认跟随其后,心理学…
016、Java泛型实例化
Java泛型实例化 实例化具有无参数构造函数的泛型对象 //newInstance() method need constructor without parameter //Class<T> come form Class.class public <T> T getNewObject(Class<T> cls) { T t=null; try { t = c…