自我感悟
Σεαγαπώ℡
Java,分布式,容器
展开
-
子类和父类中方法调用问题总结
昨天晚上,自己在牛客网上刷了一道关于父类子类方法引用的问题,当时感觉很蒙蔽,已经上床了,就带着问题直接睡了,今早起来,把问题复现,自己又深入的了解了一下,打算记录一下这次收获的东西,希望能够帮助到大家。问题原文public class Test { public static void main(String[] args) { System.out.println(new B.getValue()); } static class A { .原创 2020-12-12 22:14:30 · 2156 阅读 · 0 评论 -
volatile关键字的内存语义
volatile关键字的理解当我们声明一个变量为 volatile 时,程序对于该变量的读和写就会变得十分特别,具体的特别之处,我们还是要看看 volatile 关键字的内存语义,观察其特别之处。下面是一个简单的例子,通过这个例子我们来具体说明 volatile 关键字的内存语义class VolatileFeatures { volatile long value = 0L; pulbic void set(long val) { value = val; } public void原创 2020-11-17 21:54:58 · 128 阅读 · 0 评论 -
happens-before原理简介
由来和具体概念从JDK5开始,JSR-133使用 happens-before 来实现变量的内存可见性问题。在JMM中,如果一个操作执行的结果需要对另外一个操作可见,那么二者必定要存在 happens-before 关系。与开发人员密切相关的 happens-before 规则1、程序顺序规则:一个线程中的每个操作,happens-before 于该线程中的其他任意后续操作。2、监视器锁规则:对于一个锁的解锁,happens-before 于对该锁的加锁。(有锁才能解锁)3、volatile 变原创 2020-11-17 21:52:20 · 585 阅读 · 0 评论 -
微服务之SpringCloud(一)——Eureka服务治理组件
Spring Cloud——Eureka底层源代码解析基础概念Spring Cloud Eureka 是 Spring Cloud Netflix 微服务套件中的一部分,它基于 Netflix Eureka 做了二次封装,主要负责完成微服务架构中的服务治理功能。主要模块构建服务注册中心服务注册与发现Eureka的基础架构Eureka的服务治理机制Eureka的配置源码解析1、属性加载过程准备工作,搭建起一个基础架构,通过引入依赖,文件配置,开启启动类注解这三步的类似操作,进行服原创 2020-08-14 01:43:58 · 155 阅读 · 1 评论 -
Mybatis基础概念+缓存机制原理图解
Mybatis缓存机制默认情况下,Mybatis中有一级缓存和二级缓存,默认情况下一级缓存是开启的,而且是不能关闭的。一级缓存指 SqlSession 级别的缓存,当同一个 SqlSession 中进行相同的SQL语句查询时,第二次以后的查询就不会从数据库中查询,而是直接从缓存中获取,一级缓存最多缓存1024条 SQL。二级缓存指可以跨SqlSession的缓存,是 mapper 级别的缓存,对于 mapper 级别的缓存,不同的 SqlSession 是可以共享的。一级缓存原理(SqlSe原创 2020-08-06 00:34:07 · 316 阅读 · 0 评论 -
给定一个非负索引K,K <= 33,返回杨辉三角的第K行(LeetCode 杨辉三角 || )
给定一个非负索引 k,其中 k ≤ 33,返回杨辉三角的第 k 行。关于杨辉三角的结构特点,在这里不做过多赘述,请大家自行百度获知。代码实现class Solution { public static List<Integer> getRow(int rowIndex) { //定义一个可以装入List的List集合 List<List<Integer>> result = new ArrayList<>();原创 2020-07-22 08:36:34 · 581 阅读 · 0 评论 -
leetCode题库中杨辉三角的实现(数组+集合)
“杨辉三角”代码实现一、代码实现原理一、代码实现原理一、对于”杨辉三角“这道算法题,个人认为最主要的是能够理解随着行数的增多,列数也在不断地累加,代码如下:int[][] yanghui = new int[10][]; for (int i = 0; i < yanghui.length; i++) { yanghui[i] = new int...原创 2019-12-08 00:02:51 · 140 阅读 · 0 评论 -
对于RestFul编码风格的理解
Resultful风格:GET 用于查询资源POST 用于创建资源PUT 用于更新服务端的资源的全部信息PATCH 用于更新服务端的资源的部分信息DELETE 用于删除服务端的资源...原创 2020-07-07 15:31:23 · 281 阅读 · 0 评论