java基础
文章平均质量分 92
Tina_Run_润
行行好吧我学java的
展开
-
高级语言中枚举(类)的用法
枚举跟普通类一样可以用自己的变量、方法和构造函数,构造函数只能使用 private 访问修饰符,所以外部无法调用。 单例模式? static和常量的设计上有单例模式吗values(), ordinal() 和 valueOf() 方法enum 定义的枚举类默认继承了 java.lang.Enum 类,并实现了 java.lang.Serializable 和 java.lang.Comparable 两个接口。values(), ordinal() 和 valueOf() 方法位于 java.原创 2022-03-07 22:53:31 · 347 阅读 · 2 评论 -
JVM基础
字节码指令集可以直接看对照表hhh,操作时,会将操作数压进栈帧中操作数栈的栈顶。之后类似C语言cpu与变量存储(内存)和栈的交互,本地变量在栈帧的本地变量表中例:在栈顶压入常量:4将栈顶的数存入变量1。原创 2023-04-09 19:38:33 · 498 阅读 · 1 评论 -
序列化_原理与应用
序列化 (Serialization)是将对象的状态信息转换为可以存储或传输的形式的过程。如在内存中的java对象(本是方便JVM使用的格式)序列化为硬盘或是网络传输中的二进制文件、或是序列化为json字符串,再通过http/https协议进行传输。通常是转换为字节序列,以在网络通信、IO流等中传输,也常见序列化为json字符串通过序列化,对象将其当前状态(可理解为数据)写入到临时或持久性存储区。以后,可以通过从存储区中读取或反序列化对象的状态,重新创建该对象。什么时候序列化?原创 2023-05-28 17:54:49 · 1812 阅读 · 0 评论 -
java并发编程
通过看注释:依赖于先进先出的等待队列,依靠单个原子int值表示状态(获取中or释放)子类一般使用内部类来实现需要同步的工作提供两种模式:独占,共享在LOCK包中的相关锁(常⽤的有ReentrantLock、 ReadWriteLock)都是基于AQS来构建⼀般我们叫AQS为同步器通过CAS原子操作修改state的值,用volatile实现可见性。这里CAS怎么实现?好家伙还自己实现队列,,acquire方法使用了模板设计模式。原创 2023-06-12 12:09:57 · 624 阅读 · 0 评论 -
java基础开发经验与技巧
这种写法,在user为null时,是有可能报NullPointerException异常的。为了解决这个问题,于是采用下面的写法这种写法是比较丑陋的,为了避免上述丑陋的写法,让丑陋的设计变得优雅。JAVA8提供了Optional类来优化这种写法。比如,在主程序中以前写法JAVA8写法方法判断是否为空,若非空则运行参数中的函数体;而方法会返回一个boolean类型值,如果对象不为空则为真,如果为空则false对应源码以前写法java8写法。原创 2023-04-09 16:02:38 · 99 阅读 · 0 评论 -
反射注解单元测试笔记
Junit单元测试:* 测试分类: 1. 黑盒测试:不需要写代码,给输入值,看程序是否能够输出期望的值。 2. 白盒测试:需要写代码的。关注程序具体的执行流程。* Junit使用:白盒测试 * 步骤: 1. 定义一个测试类(测试用例) * 建议: * 测试类名:被测试的类名Test CalculatorTest * 包名:xxx.xxx.xx.test cn.itcast.test 2. 定义测试方法:可以独立运行 * 建议: * 方法名:tes原创 2022-05-08 15:36:36 · 129 阅读 · 0 评论