自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 资源 (2)
  • 收藏
  • 关注

原创 JAVA内存溢出与内存泄露

名词解释 内存溢出 out of memory,是指程序在申请内存时,没有足够的内存空间供其使用,出现out of memory; 内存泄露 memory leak,是指程序在申请内存后,无法释放已申请的内存空间,一次内存泄露危害可以忽略,但内存泄露堆积后果很严重,无论多少内存,迟早会被占光。 memory leak会最终会导致out of memory! java内存分配策略 Java 程...

2019-01-05 18:01:34 886 1

原创 spring的aop注解含义及使用

在了解和使用springAOP注解之前,我们有必要学习一下java5.0中新增的注解(Annotation)技术。 1.1、了解注解   注解遵循着一个基本原则:注解不能直接干扰代码运行,无论增加或删除注解,代码都能够正常运行。java语言解释器会忽略这些注解,而由第三方工具负责对注解进行处理。第三方工具可以利用代码中的注解间接控制程序代码的运行,它们通过java反射机制读取注解的信息,并根据...

2018-07-27 15:42:24 20095 1

原创 JAVA高级工程师面试总结(持续更新)

1.项目介绍数据模型和业务场景,分库分表的实现,缓存是怎么使用的,缓存和表数据的一致性是怎么保证的,缓存穿透怎么解决 2.线程的基本状态,线程是怎么执行的,独占锁和共享锁的原理,AQS的实现,线程池怎么使用的,每个参数的解释,线程是怎么回收的,核心线程能不能被回收 3.数据库表设计,分布式事务一致性 4.介绍一个设计模式,并针对其实现问一些原理 ...

2020-08-25 17:29:21 420

原创 拆箱与装箱,看这一篇博客就够了!

开这篇博客之前,先说下Long和long的区别 java有八大基本数据类型,byte(8),char(16),short(16),int(32),long(64),float(32),double(64),boolean(1) 对应的八种包装类型,Byte,Char,Short,Integer,Long,Float,Double,Boolean 对于包装类来说,它的用途主要有两种: a.作为基本类型对应的类类型,方便对象操作 b.包含每种基本数据类型的最大值,最小值等操作方法 双等号针对基本数据类型比较的是

2020-08-17 22:29:56 588

原创 mysql语句优化

一.执行计划 可参考这篇博客:https://blog.csdn.net/wuseyukui/article/details/71512793 二.索引类型 主键索引:是一种特殊的唯一索引,一个表只能有一个主键,不允许有空值。 唯一索引:索引列的值必须唯一,但允许有空值。如果是组合索引,则列值的组合必须唯一。 普通索引:Normal建立在单列或多列上,用于加快查询速度,一张表可建立多个普通索引。...

2019-03-21 20:39:56 340

转载 装饰器模式

装饰器模式 装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其结构。这种类型的设计模式属于结构型模式,它是作为现有的类的一个包装。 这种模式创建了一个装饰类,用来包装原有的类,并在保持类方法签名完整性的前提下,提供了额外的功能。 我们通过下面的实例来演示装饰器模式的用法。其中,我们将把一个形状装饰上不同的颜色,同时又不改变形状类。 介绍 意图:动态地给...

2019-01-25 17:51:05 273

原创 原型模式

原型模式 原型模式(Prototype Pattern)是用于创建重复的对象,同时又能保证性能。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 这种模式是实现了一个原型接口,该接口用于创建当前对象的克隆。当直接创建对象的代价比较大时,则采用这种模式。例如,一个对象需要在一个高代价的数据库操作之后被创建。我们可以缓存该对象,在下一个请求时返回它的克隆,在需要的时候更新数据库,以此...

2019-01-19 17:47:58 278

转载 Java代码优化

代码优化细节 (1)尽量指定类、方法的final修饰符 带有final修饰符的类是不可派生的。在Java核心API中,有许多应用final的例子,例如java.lang.String,整个类都是final的。为类指定final修饰符可以让类不可以被继承,为方法指定final修饰符可以让方法不可以被重写。如果指定了一个类为final,则该类所有的方法都是final的。Java编译器会寻找机会内联所...

2018-12-22 16:04:18 925 1

原创 Object源码解析

Object源码解析 简介 类Object是类层次结构的根类。每个类都使用Object作为超类。所有对象(包括数组)都实现这个类的所有方法。 源码解读 package java.lang; public class Object { /*一个本地方法,具体是用C(C++)在DLL中实现的,然后通过JNI调用*/ private static native void registe...

2018-12-07 17:31:51 269

原创 Redis介绍

Redis 1.redis简介   redis是用c语言开发的一个开源的高性能键值对(key-value)数据库。它通过提供多种键值数据类型来适应不同场景下的存储需求,目前为止Redis支持的键值数据类型如下:   1.字符串类型(string)   2.散列类型(hashs)   3.列表类型(lists)   4.集合类型(sets)   5.有序集合类型(sorted sets)   官方提...

2018-12-01 16:33:14 900

转载 java内存模型

JAVA内存模型:https://mp.weixin.qq.com/s?__biz=MzIxNjA5MTM2MA==&mid=2652434841&idx=1&sn=cbd9a98d35a8f6f64821e811b35ea2b3&chksm=8c620e16bb1587005c500f114ff9e5cec7713c4f8d1e0ed5ab595ad31d48f4...

2018-11-25 22:37:02 171

转载 String源码解析

String源码解析 1.实现接口 public final String implements java.io.Serializable, Comparable<String>, CharSequence{ java.io.Serializable  这个序列化接口没有任何方法和域,仅用于标识序列化的语意。 Comparable  这个接口只是一个compareTo(T o)接口...

2018-11-16 10:32:15 200

转载 一张图看懂JVM

一张图看懂JVM 来自微信公众号:无敌码农   JVM结构示意图   JVM总体概述   JVM总体上是由类装载子系统(ClassLoader)、运行时数据区、执行引擎、内存回收这四个部分组成。其中我们最为关注的运行时数据区,也就是JVM的内存部分则是由方法区(Method Area)、JAVA堆(Heap)、虚拟机栈(Stack)、程序计数器、本地方法栈这几部分组成;除此以...

2018-09-22 16:44:16 403

JDK和Eclipse安装教程

DK 是一系列工具的集合,这些工具是编译Java源码、运行Java程序所必需的,例如JVM、基础类库、编译器、打包工具等。eclipse位数和jdk版本位数一定要一致,根据你的电脑选择,我估计一般都是64位

2018-07-25

maven3.5.3

maven的安装包,Maven(翻译为"专家","内行")是跨平台的项目管理工具。主要服务于基于Java平台的项目构建,依赖管理和项目信息管理。

2018-07-25

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除