自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(39)
  • 收藏
  • 关注

原创 jdk8 方法引用

方法引用(Method reference.)方法引用实际上是Lambda表达式的一种语法糖方法引用我们可以将方法引用看作是一个【函数指针】,function pointer.方法引用的分类类名::静态方法名 public static void main(String[] args) { Student student1 = new Student("zhangsan", 10); Student student2 = new Stud

2022-03-23 13:47:24 272

原创 JAVA内省和反射

内省Wiki 定义在计算机科学中,内省是指计算机程序在运行时,检查对象类型的一种能力,通常也可以称作运行时类型检查java定义从 java Bean的角度来看,这里的对象就是bean对象,主要关注点是属性、方法和事件,也就是运行时可以获取到相应的信息今夕一些处理[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EXfeSdlZ-1647321008695)(/Users/bingye/Library/Application Support/typora-user

2022-03-15 13:10:44 591

原创 为什么出现持久性框架

JDBC现状数据库的连接配置信息存在硬编码问题,如果切换数据库需要重新编译源码文件频繁创建、释放连接,造成资源的浪费try { // 加载数据库驱动 Class.forName("com.mysql.jdbc.Driver"); // 通过驱动管理类获取数据库连接 DriverManager.getConnection("jdbc:mysql://localhost:3306/mybatis?characteEncoding=utf-9", "root", "root");

2022-03-15 11:31:19 953

原创 多线程相关的名词解释

多线程用多线程只有一个目的,那就是更好的利用cpu的资源,因为所有的多线程代码都可以用单线程来实现。这个只对一半,因为反应多角色的程序代码,最起码每个角色都要给他一个线程,否则连实际场景无法模拟当然也没法说能用单线程来实现:比如最常见的生产者消费者模型.多线程: 指的是这个程序运行时产生了不止一个线程并行与并发:并行: 多个cpu实例或者多台机器同时执行一段处理逻辑并发: 通过cpu调度算法,让用户看上去是同时执行,实际上从cpu操作层面不是真正的同时.并发往往在场景中有公共的资源,那么针对

2022-03-11 11:35:08 672

原创 CAS(自旋锁优化)及ABA问题

CAS (自旋锁 优化)CAS的全称是 compare and swap,他是同步类的基础, javade concurrent中的原子性都是通过CAS进行实现的**jdk8**中底层调用的native方法是Unsafe文件中的 compareAndSwapjdk11中有了升级调用的native方法是 Unsafe文件中 weakCompareAndSet原理按照理解,因为是自旋锁优化,实际不是上锁就是在某个线程在改变volatile之前需要验证一下,要改变的值和预期的值是否一致,如果一

2022-03-11 11:23:55 856

原创 synchronized底层锁升级

锁升级

2022-03-10 14:26:02 230

原创 Synchronized 使用方式

Synchronized 使用方式修饰到方法上以下的m1\m2方法上加锁相当于,把锁加在this对象上,所以只有m1下城执行完成m2线程才可以继续执行public class T1 { private static synchronized void m1() { for (int i = 0; i < 10; i++) { try { Thread.sleep(1000); Syst

2022-03-10 13:54:15 216

原创 centos8 systemctl Unit corda.service

CentOS 8中 Failed to enable unit: Unit file corda.service does not exist.背景部署一个节点服务网,用到了linux自带的 systemctl 服务问题: 无法加载节点服务# sudo systemctl enable corda.service Failed to enable unit: Unit file corda.service does not exist.解决方式:nmcli c reload结果

2022-03-04 11:12:30 1523

原创 java副作用

java 副作用的解释转载 副作用是方法除了计算和返回值外所做的任何事情,实例或类字段值的任何改变都是副作用,就像在屏幕上绘制某些内容,写入文件或者网络连接.严格来说,功能 被定义为没有副作用 - 这就是Java改为 “方法” 一词的原因,没有返回值的实函数毫无意义.显然,没有返回值的方法必须具有某种副作用,可以证明其存在,设置方法就是一个例子-副作用是更改对象的内部状态....

2020-04-28 14:43:47 646

转载 window Command line is too long.

解决方法https://blog.youkuaiyun.com/ZXJ_1223/article/details/80611089

2019-05-19 15:03:44 321

转载 mac下使用realpath命令

https://stackoverflow.com/questions/3572030/bash-script-absolute-path-with-os-xhttps://blog.youkuaiyun.com/robertsong2004/article/details/54809105安装 coreutils$ brew install coreutils在 .bash_profile 追...

2019-04-29 17:44:06 2979

原创 自定义实现Collector,和对Characteristics的实验

自定义实现Collector,和对Characteristics的实验import java.util.*;import java.util.function.BiConsumer;import java.util.function.BinaryOperator;import java.util.function.Function;import java.util.function.Su...

2019-04-22 16:07:06 463

原创 Comparator编译类型推断失败原因

Comparator类型推断失败原因话不多说直接上(出问题的)代码public static void main(String[] args) { List<String> list = Arrays.asList("nihao","hello","world","welcome"); // 编译器无法进行类型推断 Collections.sort(list...

2019-04-22 13:27:41 1256

原创 数据结构和算法绪论

数据结构和算法绪论数据结构数据结构是一门研究非数值计算的程序设计问题中的操作对象,以及他们之间的关系和操作等相关问题的学科程序设计 ====== 数据结构 +++ 算法数据元素相互之间存在的一种或多种特定关系的集合分类逻辑结构指数据对象中数据元素之间的相互关系,也是我们今后最需要关注和讨论的问题物理结构是指数据的逻辑结构在计算及中的存储形式逻辑结构...

2019-04-19 09:27:24 232

翻译 SpringCloud主要的工程

Main Projects此文档来自于Spring Cloud官网Spring Cloud Config集中对外的配置管理器,通过git 仓库,这些配置资源直接映射到Spring 的环境变量,这些配置资源也可以非spring应用使用Spring Cloud NetflixNetfilx各种组件构成Spring Cloud Bus一个服务总线为了链接服务和服务实例一起用分布式的消息...

2019-04-18 12:02:55 217

原创 Collectors

CollectorsCollect : 收集器Collector 做为collect方法的参数Collector是一个接口,他是一个可变的汇聚操作,将输入的元素积累到一个可变的结果容器内;他会在所有元素处理完毕后,将积累的结果转换为一个最终的表示(这是一个可选的操作),它支持穿行和并行两种方式Collectors本身提供了关于Ccollect的常见汇聚实现,Collectorts本身实际...

2019-04-07 17:26:51 267

原创 java8 方法引用

方法引用(Method reference.)方法引用实际上是Lambda表达式的一种语法糖方法引用我们可以将方法引用看作是一个【函数指针】,function pointer.方法引用的分类类名::静态方法名 public static void main(String[] args) { Student student1 = new Stud...

2019-04-06 00:43:24 301

原创 Optional

java8 的 Optional所属包:package java.util;Optional 就是一个容器Optional 无法直接构造因为构造方法是私有的 /** * Constructs an empty instance. * * @implNote Generally only one empty instance, {@link O...

2019-04-05 23:35:37 199

原创 Java8Lambda表达式

Java8Lambda表达式java8提供的函数一些接口package java.util.function;Lambda表达式一种运算符表示匿名函数和闭包为什么需要用Lambda表达式在Java中,我们无法将函数作为参数传递给一个方法,也无法申明返回一个函数的方法在javaScript中,函数参数是一个函数,返回值是另外一个函数的情况是非常常见的;JavaScript...

2019-04-05 23:02:21 284

原创 (二)Topic和log

(二)Topic和log此文档为本人学习kafka记录官方文档: https://kafka.apache.org/documentation/参考资料:《深入理解Kafka:核心设计与实践原理》 朱小厮 TopicTopic是发布消息的类别和订阅源的名称Kafka 的Topic总是多用户的一个Topic 可以有0个或者是多个消费者订阅它写入的数据part...

2019-04-05 08:37:33 316

原创 (一)kafka的介绍

(一)Kafka介绍此文档为本人学习kafka记录官方文档: https://kafka.apache.org/documentation/参考资料:《深入理解Kafka:核心设计与实践原理》 朱小厮 Kafka简介​ kafka 起初是由LinkedIn公司采用Scala语言开发的一个多分区,多副本,且基于ZK分布式消息系统,现在已经被捐献给了Apache基金会....

2019-04-05 00:22:34 262

原创 java的虚拟机的内存

区域栈stack栈的特点栈描述的是方法执行的内存模型,每个方法调用都会创建一个栈帧(存局部变量/操作数/方法出口等)JVM为每个线程创建一个栈,用于存放该线程执行方法的信息(实际参数/局部变量等)栈属于线程私有,不能实现线程间的共享栈的存储特性先进后出,后进先出栈是由系统自动分配,速度块!栈是一个连续的内存空间堆heap堆用于存储常见好的对象和数组(数组也是对象)JVM只...

2019-04-04 21:59:23 746

原创 java应用程序运行机制

计算机高级语言的类型编译型解释型java是两种类型的结合Java 运行流程编写java源程序 *.java用编译器将java源程序编译成字节码文件*.class利用jvm解释执行JRE类装载字节码校验解释器解释...

2019-04-04 20:01:54 244

翻译 Haskell 介绍(学习笔记)

什么是Haskell 1. Haskell is a purely functional programming language Haskell 是一种纯函数的编程语言 2. Haskell is lazy 用到的时候才会加载 3. Haskell is statically typed Haskell 是静态类型 4. Haskell is elegant and conc...

2019-02-25 11:46:44 2754 2

原创 Scala语言基础

注:此篇为本人学习记录一、scala的基本数据类型(1)注意*:(1) 在scala中任何数据都是对象 (2) 定义变量的时候,可以不指定类型(2)数值类型(1)Byte (2)Short (3)Int (4)Long (5)FLoat (6)Double以上的数值类型的字节大小和java中一样eg Byte -128-127(3)字符串(1)C...

2018-04-02 19:36:53 176

原创 yum163源配置

背景:因为最近在学习Hadoop集群,及构造镜像,需要通过yum安装ntp,发现本地元无法使用,故切换163的yum源,一下为本人操作步骤。 OS redhat 7.4参考:https://www.cnblogs.com/edward2013/p/5019594.html1、查看redhat自带的yumrpm -qa | grep yum2、删除redhat自带yumrpm ...

2018-04-02 19:14:53 1390

原创 redhat配置本地yum源

背景:学习Linux,在安装Linux时选择了最小的安装方式,因为需要wget命令去下载一些*.tar.gz文件,发现没有wget 命令,需要安装wget。根据网上的各种资料、以下是本人的操作步骤,以便后续如果遇到可以翻自己的文档。 参考:https://www.cnblogs.com/dadong616/p/5586697.html1、挂载ISO镜像文件2、创建一个文件目录、来挂载...

2018-04-02 19:12:29 289

原创 匿名对象和内部类

1、匿名对象的特点概念:匿名对象是指创建对象时,只有创建对象的语句,却没有吧对象的地址赋值给某个对象。 例如:package com.niming;/* * 这里创建一个对象 */public class Person { public void eat() { System.out.println("哈哈哈哈"); }}创建一个普通对象Person p

2017-11-16 00:12:42 233

原创 final关键字和static关键字

1、为什么会有final因为继承的出现提高了代码的复用性。但是有些类描述完成后不想被继承,或者来说有些类中的部分方法和功能是固定的不想让子类重写。 这个时候就出现了final,final的意思是最终,不可变化的。 1、final的特点 被final修饰的类不可以被继承, 但是可以继承其他的类。 被final修饰的方法不可以被重写 被final修饰的变量是常量、这些变量只能被赋值一次 被f

2017-11-15 23:42:19 302

原创 面向对象的三大特征与抽象类

继承的概念在现实生活中,继承一般指子女继承父辈的财产。在程序中,继承描述事物之间的所属关系,通过继承可以使多种事物之间形成一种关系体系。例如公司中的研发部员工和维护部员工都属于员工,程序中便可以描述为研发部的员工和维护部的员工继承与员工。1、继承好处 继承提高代码的复用性 继承让类与类之间产生了关系,提供了多态的前提2、注意 a、类只支持单继承 b、一个类是可以被多个类继承抽象类例如:一辆自

2017-11-14 22:04:11 480

原创 java对象的内存

假定有如下一个类package com.oop;/** * 对象 * */public class Car { private String abc; public void run() { System.out.println("这是方法"); }}这有一个测试main方法package com.oop;/* * 这个测试mian方法来创建

2017-11-13 23:14:19 251

原创 面向对象的一个基本理解

1、面向对象基本理解的概念面向对象的思维方式是一种更符合人类思考的思想面向过程思维方式中更多的体现的是一种执行者(自己做一些事情),而面向对象的思维方式更多是体现一种指挥者面向对象把问题简单化2、如何思考面向对象?举一个简单的例子 把大象装冰箱里为例子。上面的例子大象装到冰箱里你得先思考大象装到冰箱里 是不是得需要一个 冰箱 ,所以你得需要一个冰箱的对象 你把什么往冰箱里装 是不是得需

2017-11-13 22:42:31 208

原创 myeclipse基本的快捷键

package com.sty;/** * 快捷键 * @author Bingye Meng * alt+/ ------> 自动补全 * syso + alt + / -------> System.out.println(); * main + alt + / -------> public static voidmain(String[] ar

2017-11-12 21:09:41 300

原创 Linux下的ssh免密登录原理

这里是需要的配置 假如有两台服务器A、BB ——————————-> A B想免密码登录A在A上 @A ssh-keygen -t rsa 这条命令的意思是产生一个秘钥对 将产生的公共秘钥发给B @A ssh-copy-id -i ~/.ssh/id_rsa @B注:这里的AB主机名或者是主机ip、产生的秘钥对在~/.ssh下 这样就可以免密登录

2017-11-12 12:38:07 599

原创 抽象类和抽象方法

概念:包含抽象方法的类就叫做抽象类abstract class Animal //定义抽象类 { String str; Animal(String s) //定义抽象类的一般方法 { str=s; } abstract void eat(); //定义抽象方法 } class Horse extends

2017-11-08 23:25:48 279

原创 java中的static关键字

通常来说,在创建类的时候,就是在描述那个类的对象的外观和行为。除非用new创建了类的对象。否则实际上并未获得任何对象,只有new来创建对象时,数据存储空间才被分配,其方法才被外界调用。以上的方法有两种情况是无法解决的。1、只想为某特定域分配单一存储空间,而不去考虑究竟要创建多少对象,甚至根本不就不创建任何对象。2、希望某一个类的方法不用创建对象就能调用。以上两种无法解决的情况就得引入static关键

2017-11-07 23:29:22 215

原创 java对象的特例:基本类型

基本类型与包装类型

2017-11-06 22:04:26 433

原创 java程序运行时对象是怎么进行放置安排? 内存是如何分配的呢?

java程序运行时对象是怎么进行放置安排?内存是如何分配的呢?1. 寄存器 这个是最快的存储区,位于处理器的内部。 但是寄存器的数量是极其有限的,所以寄存器根据需求进行分配,你是不能直接控制。2. 栈 位于通用的RAM(随机访问存储器)中,但是通过堆栈指针可以从处理器哪里获取直接的支持。 若堆栈指针向下移动,则分配新的内存;若向上移动,则释放哪

2017-11-05 00:39:17 446

原创 初学者写java代码要注意代码规范:

1、要归纳。注意过多的费代码的出现,尽可能的使代码精简。 。 2、要有层次感。每个包是做什么的一定要分类。例如: 每个包是做什么的一眼就能知道3、代码注释。参数是做什么的,功能是做什么的,返回值返回的是什么。4、代码的命名要正规,让读者能见名知意。请各位大神见谅,本人是一个刚开始学习java的菜鸟,如果有什么不对的请指正。

2016-11-20 19:51:48 1071

空空如也

空空如也

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

TA关注的人

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