
Java
文章平均质量分 71
wayne214
欢迎大家关注公众号:君伟说。
展开
-
cookie和session的区别及应用场景
Cookie和Session是两种在网络应用中用于处理用户身份认证和数据传递的技术。它们之间有一些关键的区别和应用场景。原创 2023-12-01 09:28:24 · 294 阅读 · 0 评论 -
JAVA的反射机制
Java反射机制是指在运行时动态地获取类的信息并操作类的成员(属性、方法、构造方法等)的能力。通过反射,我们可以解析出类的完整信息,包括构造函数、成员变量、继承关系等。// 获取类的信息Class<?// 创建对象// 调用方法");// 访问属性Java反射机制是指在运行时动态地获取类的信息并操作类的成员(属性、方法、构造方法等)的能力。通过反射,我们可以解析出类的完整信息,包括构造函数、成员变量、继承关系等。// 获取类的信息 Class <?原创 2023-11-28 15:24:18 · 111 阅读 · 0 评论 -
Java并发中的CAS,AQS和ABA问题
今天聊一下Java并发编程中的CAS,AQS以及ABA问题。原创 2023-07-05 22:15:10 · 483 阅读 · 0 评论 -
面试高频之线程池
在面试中关于线程池的问题出现率还是很高的,今天就做下总结。为什么用线程池线程池提供了一种限制和管理资源(包括执行一个任务)的方式。 每个线程池还维护一些基本统计信息,例如已完成任务的数量。这里借用《Java 并发编程的艺术》提到的来说一下使用线程池的好处:降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的消耗。提高响应速度。当任务到达时,任务可以不需要等到线程创建就能立即执行。提高线程的可管理性。线程是稀缺资源,如果无限制的创建,不仅会消耗系统资源,还会降低系统的稳定性,使用线程池可以原创 2022-03-22 14:45:43 · 2834 阅读 · 0 评论 -
2021安卓高频面试题
Java部分JVM虚拟机及GC垃圾回收机制GC ROOT对象有哪些?ClassLoder类的加载机制Java内存模型, volatile的作用同步锁Synchronized与ReentrantLock区别多线程,线程池JVM,DVM与ART的区别ThreadLocal使用原理String str = new String(“abc”)创建了几个对象?HashMap,LinkedHashMapArrayList,LinkedList网络部分7层或5层网络模型为什么TCP三次握原创 2021-05-21 23:21:33 · 192 阅读 · 0 评论 -
一文了解单例模式
设计模式千千万,总是单例最常见。单例模式的定义保证一个类仅有一个实例,并提供一个访问它的全局访问点。六种单例的创建方式1.饿汉式public class Singleton { private static Singleton instance = new Singleton(); private Singleton() {} public static Singleton getInstance() { return instance; }}优点:基于类的加载机制原创 2021-05-18 12:06:31 · 128 阅读 · 4 评论 -
同步锁Synchronized和ReentrantLock区别
今天简单聊聊Java中两个同步锁:synchronized 和ReentrantLock.java同学肯定对synchronized这个关键字非常熟悉,通常会用在处理同步问题中。首先,我们看一下synchronized常见的使用方式:修饰实例方法修饰类的静态方法修饰代码块使用方式下面我们分别看一下三种方法的简单实现代码修饰实例方法public class test { private int s原创 2021-04-21 19:30:20 · 643 阅读 · 1 评论 -
纯干货Android知识点整理(二)
本篇为第二篇整理的文章,第一篇的链接纯干货Android知识点整理(一)文章目录1.OkHttp解析2.Bitmap解析3.Window、Activity、View三者关系4.Handler机制5.APK安装包体积优化1.OkHttp解析首先 OkHttp 内部是一个门户模式,所有的下发工作都是通过一个门户 Dispatcher 来进行分发。然后在网络请求阶段通过责任链模式,链式的调用各个拦截器的 intercept 方法。其中有 2 个比较重要的拦截器:CacheInterceptor 和 Ca原创 2020-08-12 17:12:10 · 218 阅读 · 0 评论 -
Android注入框架ButterKnife使用解析
Android开发中使用注入框架,可减少findViewById的代码量,也能让我们的代码更加整洁,有许多著名的注入框架比如,ButterKnife,Annotation,XUtils,afinal等,最开始接触的是XUtils,后面开始接触到了ButterKnife; XUtils包含了许多模块,比如数据库操作orm,网络请求,图片及视图注入,而如果仅需要做视图注入的话BK更合适些。今天来看看ButterKnife的使用。文章目录1.添加依赖2.使用使用@BindView取代findViewByI.原创 2020-08-05 14:13:22 · 1615 阅读 · 0 评论 -
SpringBoot入门系列HelloWorld
根据咱们程序员学习的惯例,学习一门新技术都是从HelloWorld开始的。感觉编程是一件非常富有意义的事情,程序员也是一群可爱的人,渴望被关怀和关注,因为我们总在和世界say Hi.好了进入正题创建项目首先创建一个项目,可看我上一篇文章写得IntelliJ IDEA创建第一个Spring boot项目接下来运行这个项目,你将会看到如下页面提示我们当前没有准确的映射,所以找不到对应的...原创 2019-02-16 10:45:30 · 163 阅读 · 0 评论 -
IntelliJ IDEA创建第一个Spring boot项目
下载maven:http://maven.apache.org/download.cgi开发工具:IntelliJ IDEAJDK: Java JDK1.81.为了第一个项目初始化速度加快,我们先来配置maven:添加配置:选择Build,Execution,Deployment下, Bulid Tools下的Maven,在勾选右边红框中的Override,选择你下载后的文件夹...原创 2019-01-19 20:21:09 · 243 阅读 · 0 评论