- 博客(8)
- 收藏
- 关注
原创 Java工厂模式
Java工厂模式工厂模式运用了继承和多态。创建一个接口:public interface Shape { void draw();}三个接口的实现类:public class Rectangle implements Shape { @Override public void draw() { System.out.println("Inside Rectangle::draw() method."); }}public class Square
2021-07-12 15:57:24
139
原创 Java单例模式
java单例模式饿汉式单例模式会在类加载的时候就实例化对象,如果没有使用该实例,就会造成内存浪费。public class Singleton { private final static Singleton INSTANCE = new Singleton(); private Singleton(){} public static Singleton getInstance(){ return INSTANCE; }}构造方法私
2021-07-12 13:39:27
113
原创 Java异常详解
Java异常概述异常是Java中的一个类,它继承了Throwable接口。使用方法是用try{}catch(Exception e){}对代码块尝试执行,执行发生错误会抓住该错误相关的异常类,从异常类中获取错误信息。或者抛出至上一个方法。继承了Throwable类的有两个异常类分别是Error和Exception。错误:Error类代表了JVM本身的错误。错误不能被程序员通过代码处理。比如说线程死锁和虚拟机错误。异常:Exception类代表程序运行时编码、环境、用户操作输入出现问题。可以被Java
2021-06-02 15:46:49
130
原创 由于找不到vcruntime140_1.dll,无法继续执行代码
由于找不到vcruntime140_1.dll,无法继续执行代码问题:在安装mysql时报错:由于找不到VCRUNTIME140_1.dll,无法继续执行代码。重新安装程序可能会解决此问题。解决方法: 这是缺少了动态链接库(.ddl文件), 跟mysql无关, 下载这个ddl文件即可。以下是网盘连接。(我的是64位的)链接: https://pan.baidu.com/s/1dKpEgy-WMwCX07TKIG5mcg 提取码: fxcr解压后将vcruntime140_1.dll复制到C:\Wi
2021-05-31 16:29:34
1046
原创 生产者消费者模式
生产者消费者模式首先先来说一下wait和sleep方法。sleep()可以将一个线程睡眠,参数可以指定一个时间,这个时间内会让出cpu时间片。而wait()可以将一个线程挂起,直到超时或者该线程被唤醒。sleep和wait的区别有:这两个方法来自不同的类分别是Thread和Object。也就是说sleep是休眠某一个线程,而wait是挂起了某一个对象或代码块。sleep方法没有释放锁,而wait方法释放了锁,使得其他线程可以使用同步控制块或者方法。wait,notify和notif
2021-05-27 23:24:45
98
原创 Java多线程
Java多线程多线程基础操作系统:Windows、macOS、LinuxCPU执行代码都是一条一条顺序执行的,但是,即使是单核的CPU,也可以同时执行多任务。例如,假设我们有语文、数学、英语3门作业要做,每个作业需要30分钟。我们把这3门作业看成是3个任务,可以做1分钟语文作业,再做1分钟数学作业,再做1分钟英语作业。对于CPU来说,当某个线程获取了CPU时间片的时候,这个线程就会执行。进程在计算机中,我们把一个任务称为一个进程,浏览器就是一个进程,视频播放器是另一个进程。线程某些
2021-05-27 11:51:27
150
原创 Java中Map集合的三种遍历方式
Java中Map集合的三种遍历方式方法一(最常用):增强for循环,遍历map.entrySet()集合中的每一个Map.Entry<K,V>Map<Integer,String> map = new HashMap<>();map.put(123,"abc");map.put(456,"def");for(Map.Entry<Integer,String> entry: map.entrySet()){ Integer i = entry.
2021-05-24 03:14:53
659
原创 深入理解Java垃圾回收机制(GC机制)及其实现原理
深入理解Java垃圾回收机制(GC机制)及其实现原理前言说起垃圾收集,大部分人都把这项技术当作Java语言的伴生产物。实际上,GC的历史比Java久远,1960年诞生与MIT的Lisp是第一门真正使用内存动态分配和垃圾收集技术的语言。Java语言的所有指令都是建立在JVM基础之上的,JVM是Java Virtual Machine(Java虚拟机)的缩写,作为Java语言最重要的特性之一的自动垃圾回收机制也是基于JVM实现的。垃圾什么是垃圾?对于Java来说,垃圾就是指那些在堆中存在的,已经“死
2021-05-24 02:23:00
1136
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅