自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Java中被final修饰的类

我们知道,被final修饰符修饰的变量在构造器初始化之后就不能再进行修改。对于可变的类,如果使用final修饰符修饰后容易对读者造成误解。例如:private final StringBuilder evaluations那么我们还可以对他进行修改吗?当然可以,final关键字表示的是存储在evaluations中的对象引用不会被修改,不可以再指向其他的StringBuilder,但是他的一些更改器方法依旧可以使用,例如append()...

2020-11-19 16:49:28 1271

原创 从Java源码中看 == 和.equals()的区别

文章目录判断字符串是否相等通过重写equals方法来判断两个自定义对象是否相同判断字符串是否相等在初学Java时经常使用==来对字符串是否相等进行判断,但是慢慢的又会有很多人说:“不要再用==来判断字符串是否相等了!”,这时就会有疑问:为什么不能用==来判断字符串是否相等呢,他和equals的区别又在哪里呢?首先,"=="是Java语言提供的一个运算符,他判断的依据就是操作双方是否为同一个对象,我们来看一段代码String str1 = "Hello";String str2 = "Hello

2020-11-18 16:45:24 167

原创 Java核心卷Ⅰ阅读笔记(1-3章:Java程序设计概述、Java程序设计环境、Java的基本程序设计结构)

文章目录Java程序设计概述Java程序设计环境使用命令行工具Java程序设计概述Java8相比较Java7增加了Lambda表达式,包含默认方法的接口,流和日期时间库Java在服务器端编程和跨平台客户端应用领域很有优势Java程序设计环境使用命令行工具使用命令行工具之前要先将环境变量配置好实例javac Welcome.javajava Welcome 上述命令,做了些什么?javac:将Welcome.java编译成Welcome.classjava:java启

2020-11-16 14:35:25 208

原创 InetAddress.getByAddress方法 -- 怎么在Java的byte中存0-255范围的数

目录InetAddress.getByAddress的用法引申解决方法InetAddress.getByAddress的用法科普:我们现在使用的IPv4是用一个32位的二进制数来存储的,为了方便记忆,会将其分成4个8位的二进制数(4个一字节的二进制数),每8位之间用圆点隔开。而每8位二进制数可以转换为一个0~255的十进制数,例如103.42.176.244,这种写法被称为点数表示法给定原始IP地址,返回一个InetAddress对象。 参数以网络字节顺序:地址的最高字节在getAddres

2020-11-06 15:10:34 3060

原创 为什么在Java的源码中会有很多for(;;)而不是while(true)

先说结论,在java中,for(;;)和while(true)在性能上没有什么区别那么为什么会有很多for(;;)这种奇怪的写法呢,其实在早期的一些语言中,这两者是由区别的。比如在C中,如果没有通过include引入某些头文件的话,是不会有TRUE,FALSE等等这些常量的,而如果写出while(1)这种比较魔性的代码,有点强迫症的人也是接受不了的再者,在某些编译器上,这两种写法编译出的字节码可能是不同的for( ; ; )jmp wmain+29hwhile(true)mov

2020-11-05 11:33:26 367 1

原创 Java并发编程之原子性问题

目录什么是原子性问题举例说明一下怎么解决自带原子性保证synchronized 和 Lock锁原子操作类型最好的方法还是使用无锁编程简单总结参考什么是原子性问题原子性是指在一个操作中,cpu不可以在中途暂停然后再调度,要么一次执行完成,要么就不执行。在Java中当我们讨论一个操作具有原子性问题,是一般就是指这个操作会被线程的随机调度打断而产生的一系列的问题。举例说明一下我们先来看一些例子,来了解什么是原子性的操作a = true; //原子性a = 5; //原子性a =

2020-11-04 11:45:57 807 2

原创 Java中的内存屏障是什么

目录什么是内存屏障Linux中的内存屏障JDK中的内存屏障什么是内存屏障在转载的大佬的文章既生synchronized,何生volatile中,提到了synchronized与volatile的底层实现原理的不同,synchronized本质上是一种阻塞锁,而volatile则是使用了内存屏障来实现。所以在这里对内存屏障进行一个简单的介绍为了禁止编译器和CPU对代码进行重排序,在编译器和CPU层面上都有对应的指令,这个就是内存屏障。编译器的内存屏障只是为了告诉编译器不要对指令进行重排序。当编译完

2020-11-03 18:08:15 1093

转载 既生synchronized,何生volatile (synchronized与volatile的区别)

既生synchronized,何生volatile (synchronized与volatile的区别)我们知道,synchronized和volatile两个关键字是Java并发编程中经常用到的两个关键字,而且,通过前面的回顾,我们知道synchronized可以保证并发编程中不会出现原子性、可见性和有序性问题,而volatile只能保证可见性和有序性,那么,既生synchronized、何生volatile?转载一名大佬的文章...

2020-11-03 17:22:26 274

原创 happen-before是什么

目录happen-before是什么happen-before出现的原因happen-before的七条原则happen-before的传递性happen-before是什么happen-before出现的原因为了明确定义多线程场景下重排序的问题,Java引入了JMM(Java Memory Model),也就是Java内存模型。如果有了重排序就会出现原子性,可见性,有序性的问题,但是性能会提升。所以Java内存模型不是真实存在的,而是一套规范,可以方便的使开发者在运行效率和程序开发的方便性之间找到一

2020-11-03 17:04:41 1997 2

原创 Java多线程笔记

文章目录线程线程和进程进程的三个特征并发编程的三个概念Java线程模型Thread类的常用方法构造方法Thread类的静态方法 (类方法)Thread类的非静态方法 (实例方法)线程类的创建继承Thread类,并且重写run方法实现Runnab接口使用Callable和Future接口线程的生命周期运行和阻塞状态死亡状态线程优先级控制线程执行顺序的几种方法利用Thread类的join()方法实现线程的顺序执行利用 CountDownLatch 控制线程的执行顺序利用单线程化线程池 [线程池单开一章记录吧]

2020-11-03 10:29:16 346

原创 SpringMVC笔记

文章目录SpringSpringMVC程序执行过程Spring MVC注解DispatcherServletControllerRequestMapping标注在一个方法上标注在一个类上组合注解参数与返回值redirect复位向forward转发ViewResolver(视图解析器)SpringSpringMVC程序执行过程用户通过浏览器向服务器发动请求,请求会被SpringMVC的前端拦截器(DispatcherServlet)所拦截DispatcherServlet拦截以后会调用Handler

2020-11-03 10:28:40 162

原创 Lambda表达式笔记

文章目录Lambda表达式笔记Lambda表达式Lambda 表达式,也可称为闭包,它是推动 Java 8 发布的最重要新特性。Lambda 允许把函数作为一个方法的参数(函数作为参数传递进方法中)。使用 Lambda 表达式可以使代码变的更加简洁紧凑。语法(parameters) -> expression//或(parameters) ->{ statements; }特征可选类型声明:不需要声明参数类型,编译器可以统一识别参数值。可选的参数圆括号:一个参数无需

2020-11-03 10:27:35 102

原创 XML笔记

文章目录1、什么是xml、xml的作用简介作用xml的语法文档声明语法规则XML 属性XML 验证(DTD、Schema)XML 错误会终止您的程序1、什么是xml、xml的作用简介在前面学习的html语言,html是超文本标记语言,使用html语言规定好的标签来封装文本数据。而html使用的标签html语言规定好的,每个标签都有自己特定的功能。xml语言,可扩展的标记语言,这门语言它没有定义任何的标记,而标记是由使用者自己来定义,但是由于标签名称以及属性名称都由用户自己来命名,导致别人在使用的时候

2020-11-03 10:26:14 139

原创 Javascript笔记

Javascript笔记文章目录Javascript笔记简介JavaScripejs用法笔记JavaScript JSON什么是JSON?JSON 实例JSON 语法规则JSON vs XMLJSON对象JSON对象的调用JSON.parse()从服务端接收数组的 JSON 数据异常浏览器支持JSON.stringify()javascript:void(0) 含义JavaScript 异步编程回调函数AJAX创建 XMLHttpRequest 对象XMLHttpRequest 对象创建 XMLHttpR

2020-11-03 10:23:29 196

openwrt-ramips-mt7620-psg1208-squashfs-sysupgrade.bin

斐讯k2固件OpenWrt固件,包含最新的校园网上网插件,无多于功能,简单稳定,支持拨号协议库自动拨号和拦截拨号

2020-11-14

修复翼讯卡掉wifi.reg

win10系统插了学校网线后WLAN不见了 桌面右下角没有可用wifi 设置也没有WLAN但是更改适配器里有WiFi ,修复因为翼讯校园网客户端因为不兼容的原因导致的win10掉wifi的问题

2020-11-03

空空如也

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

TA关注的人

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