
java
文章平均质量分 91
JMW1407
这个作者很懒,什么都没留下…
展开
-
Java:Java学习笔记之ReentrantLock的简单理解和使用
ReentrantLock ReentrantLock1、相关知识1.1 公平锁和非公平锁1.2 可重入锁1.3、CAS算法2、背景、定义和特征2.1、背景2.2、定义2.3、特征3、基本结构4、基本使用4.1、解决背景问题4.2、重入锁 使用4.3、公平锁使用5、源码分析5.1、AQS5.2、非公平锁的实现原理5.2.1、lock方法获取锁:tryAcquire5.2.2、锁的释放:tryRelease5.3、公平锁的实现原理5.3.1、lock方法获取锁:tryAcquire5.3.2、锁的释放:try原创 2022-01-21 20:16:36 · 4880 阅读 · 0 评论 -
Java:java学习笔记之Synchronized的简单理解和使用
Java Synchronized的简单理解和使用Synchronized参考Synchronized参考1、Java锁机制了解一下2、Java线程安全与锁机制原创 2022-01-19 09:28:50 · 689 阅读 · 0 评论 -
Java:java学习笔记之锁机制的简单理解和使用
锁机制的简单理解和使用锁机制参考锁机制参考1、Java线程安全与锁机制2、不可不说的Java“锁”事原创 2022-01-17 23:16:04 · 1820 阅读 · 0 评论 -
Java:java学习笔记之Java单例模式的简单理解和使用
Java单例模式的简单理解和使用Java单例模式1、饿汉式单例的实现如下:2、懒汉式终极版本:volatile3、Effective Java 1 —— 静态内部类4、5.2 Effective Java 2 —— 枚举参考Java单例模式1、饿汉式单例的实现如下://饿汉式实现public class SingleB { private static final SingleB INSTANCE = new SingleB(); private SingleB() {} p转载 2022-01-16 15:58:42 · 322 阅读 · 0 评论 -
Android :安卓学习笔记之事件内存泄露 的简单理解
Android 内存泄露的简单理解内存泄露1、简介2、内存泄露的本质原因3、Android 内存管理机制3.1、针对进程的内存策略3.1.1、内存分配策略3.1.2、内存回收策略3.2、针对对象、变量的内存策略3.2.1、内存分配策略3.2.2、内存释放策略3.2.1、内存分配策略4、常见的内存泄露原因 & 解决方案4.1、集合类4.2、Static 关键字修饰的成员变量4.2.1、静态成员变量有个非常典型的例子 = 单例模式4.3、非静态内部类 / 匿名类4.3.1、非静态内部类的实例 = 静态4转载 2022-01-07 00:52:49 · 279 阅读 · 0 评论 -
Java:java学习笔记之volatile关键字的简单理解和使用
volatile关键字的简单理解和使用volatile关键字1、定义2、并发编程的3个基本概念2.1、原子性2.2、可见性2.2.1、Java的内存模型JMM以及共享变量的可见性2.2.1.1、举例说明2.2.2、可见性2.3、有序性3、锁的互斥和可见性4、volatile变量的特性4.1、保证可见性4.2、保证有序性4.2.1、指令重排4.2.1.1、happens-before原则4.2.1.2、解决方法:volatile关键字4.3、不保证原子性5、volatile原理6、volatile的使用6.1原创 2022-01-06 09:02:29 · 12779 阅读 · 0 评论 -
Java: Java学习笔记之 String的常见用法
String的常见用法String的常见用法1、创建String1、字符串比较1、字符串查找1、字符串替换1、字符串拆分1、字符串截取1、转换功能的方法1、其他操作方法1、StringBuffer 和 StringBuilder参考String的常见用法1、创建StringString str1="hello";String str2=new String("world");1、字符串比较通过使用过String类提供的equals()方法,该方法本身是可以进行区分大小写的相等判断。除了这个方法原创 2021-12-29 14:44:56 · 921 阅读 · 0 评论 -
Java:java学习笔记之枚举的简单理解和使用
Java枚举的简单理解和使用枚举的简单理解和使用1、背景2、定义3、使用常用内置方法:总结枚举的简单理解和使用1、背景在枚举出现之前,如果想要表示一组特定的离散值,往往使用一些常量。例如:public class Entity { public static final int VIDEO = 1;//视频 public static final int AUDIO = 2;//音频 public static final int TEXT = 3;//文字 public static原创 2021-12-27 08:23:18 · 308 阅读 · 0 评论 -
Java:Effective java学习笔记之 用私有构造器或者枚举类型强化SIngleton属性
Java 强化SIngleton属性强化SIngleton属性参考强化SIngleton属性参考1、3、用私有构造器或者枚举类型强化SIngleton属性2、《Effective Java》阅读笔记3 用私有构造器或者枚举类型强化Singleton属性3、第三条:用私有构造器或者枚举类型强化Singleton属性...原创 2021-11-25 08:16:52 · 334 阅读 · 0 评论 -
Java:Effective java学习笔记之 消除过期对象引用
Java消除过期对象引用消除过期对象引用1、Java的垃圾回收机制2、Java中的内存泄露3、常见的内存泄露参考消除过期对象引用很多人可能在想这么一个问题:Java有垃圾回收机制,那么还存在内存泄露吗?答案是肯定的,所谓的垃圾回收GC会自动管理内存的回收,而不需要程序员每次都手动释放内存,但是如果存在大量的临时对象在不需要使用时并没有取消对它们的引用,就会吞噬掉大量的内存,很快就会造成内存溢出。1、Java的垃圾回收机制Java中的对象是在堆中分配,对象的创建有2中方式:new或者反射。对象的回收是原创 2021-11-22 15:26:48 · 765 阅读 · 0 评论 -
Java:Effective java学习笔记之 通过私有构造器强化不可实例化的能力
Java 通过私有构造器强化不可实例化的能力通过私有构造器强化不可实例化的能力参考通过私有构造器强化不可实例化的能力并非所有的类都是需要实例化的。有时候,我们可能需要编写至包含静态方法和静态域的类。这些类的名声很不好,因为有些人在面向对象的语言中滥用这样的类来编写过程化的程序。尽管如此,它们也确实有它们特有的好处:1.利用这种类,以java.lang.Math或者java.util.Arrays的方式,把基本类型的值或者数组类型上的相关方法组织起来.2.我们也可以通过java.util.Coll原创 2021-11-21 10:29:27 · 652 阅读 · 0 评论 -
Java:Effective java学习笔记之 静态工厂方法的简单理解和使用
Java 静态工厂方法静态工厂方法参考静态工厂方法参考1、Java 的静态工厂方法2、java静态工厂方法详细解析——使用静态工厂方法代替构造器3、Effective Java——第一条:用静态工厂方法代替构造器...原创 2021-11-20 15:31:35 · 776 阅读 · 0 评论 -
Java:Effective java学习笔记之 遇到多个构造器参数时要考虑用构建器
Java 遇到多个构造器参数时要考虑用构建器构建器参考构建器参考1、《Effective Java》第2条:遇到多个构造器参数时要考虑用构建器2、《Effective java》读书记录-第2条-遇到多个构造器参数时要考虑用构建器3、【读书笔记】《Effective Java》第二章 第2条:遇到多个构造器参数时要考虑使用Builder...原创 2021-11-19 08:47:13 · 458 阅读 · 0 评论 -
Java学习笔记之 内部类和静态内部类的简单理解和使用
Java 内部类和静态内部类内部类和静态内部类参考内部类和静态内部类参考1、java内部类的四大作用原创 2021-11-15 08:19:03 · 619 阅读 · 0 评论 -
Java:annotation注解的简单理解和总结
Java annotation注解Annotation1、Annotation的概述1.1、定义1.2、Annotation作用分类1.3、Annotation 架构2、Annotation的语法形式3、Annotation的分类3.1、基本注解3.2、元注解3.2.1、@Target3.2.2、@Retention3.2.3、@Documented3.2.4、@Inherited:4、自定义annotation4 .1、定义说明4.2、实例参考注解Annotation秒懂,Java 注解 (Annot原创 2021-11-14 20:47:29 · 2231 阅读 · 0 评论 -
Java学习笔记之 Lambda表达式
Java Lambda表达式1、Lambda表达式参考1、Lambda表达式参考1、Java 8 Lambda 表达式详解2、java8(二)lambda表达式手把手学习3、Java SE8 之 Lambda 表达式详解原创 2021-11-08 08:22:31 · 449 阅读 · 0 评论 -
尚硅谷_Java零基础教程(泛型generics)-- 学习笔记
Java 泛型一、为什么要有泛型1、为什么要有泛型(Generic)2、泛型的概念二、在集合中使用泛型三、自定义泛型结构1、自定义泛型结构1.1、泛型类、泛型接口1.2、泛型方法2、自定义泛型demo四、泛型在继承上的体现五、通配符的使用1、有限制的通配符六、泛型应用举例一、为什么要有泛型1、为什么要有泛型(Generic)泛型的设计背景:集合容器类在设计阶段/声明阶段不能确定这个容器到底实际存的是什么类型的对象,所以在JDK1.5之前只能把元素类型设计为Object,JDK1.5之后使用泛型来解决原创 2021-09-08 07:55:09 · 389 阅读 · 0 评论 -
尚硅谷_Java零基础教程(集合Collection:list,set;map)-- 学习笔记
Java 集合一、 Java集合框架概述1. 理解2.集合框架涉及到的API二、Collection接口中的方法三、Iterator迭代器接口1. 理解2. 主要方法3. for each四、Collection子接口一:List接口1. 概述2. List接口的常用实现类3. 接口方法五、Collection子接口二:Set1. 概述2. Set 接口的常用实现类六、Map接口1. 概述2. Map 接口的常用实现类3. HashMap的底层实现原理4. 常用方法七、Collections工具类1. 概述原创 2021-09-06 12:02:41 · 554 阅读 · 0 评论 -
尚硅谷_Java零基础教程(常用类——枚举类Enum)-- 学习笔记
Java Enum一、Enum1、自定义枚举类2、使用关键字enum定义枚举类3、Enum 类的主要方法4、实现接口的枚举类5、枚举使用场景举例一、Enum一.枚举类的使用枚举类的理解: 类的对象只有有限个,确定的,我们称此类为枚举类当需要定义一组常量时,强烈建议使用枚举类如果枚举类中只有一个对象,则可以作为单例模式的实现方式如何定义枚举类方式一:jdk5.0之前,自定义枚举类方式二:jdk5.0,可以使用enum关键字定义枚举类1、自定义枚举类属性:private final原创 2021-08-31 08:03:47 · 284 阅读 · 0 评论 -
尚硅谷_Java零基础教程(常用类——String)-- 学习笔记
Java String一、String1、String的特性2、String对象的创建3、字符串对象是如何存储的?4、字符串拼接细节5、String使用陷阱6、String的常用方法7、String与基本包装类的转换8、StringBuffer和StringBuilder的介绍一、String1、String的特性String类:代表字符串。String是一个final类,代表不可变的字符序列(不可被继承)。String对象的字符内容是存储在一个字符数组value[]中的。String实现了S原创 2021-08-29 11:01:21 · 567 阅读 · 0 评论 -
尚硅谷_Java零基础教程(多线程)-- 学习笔记
Java 多线程一、基本概念1、程序、进程、线程2、单核CPU和多核CPU、并行与并发3、使用多线程的优点二、线程的创建和使用1、API中创建线程的两种方式1.1、方式一: 继承Thread类1.2、方式二:实现Runnable接口1.3、Thread类的调用的API方法2、线程的调度3、线程的优先级三、线程的生命周期四、线程的同步1、同步方法1.1、Synchronized的使用方法五、线程的通信六、JDK5.0新增线程创建方式一、基本概念1、程序、进程、线程程序(program):是为完成特定任原创 2021-08-26 08:16:22 · 651 阅读 · 0 评论 -
尚硅谷_Java零基础教程(异常处理)-- 学习笔记
Java 异常处理一、异常概述与异常体系结构1.定义2.分类3.异常体系结构4.常见异常实例二、异常处理机制一.try-catch-finally1.理解2.语句格式二.throws + 异常类型1.理解2.格式3.重写方法声明抛出异常的原则三.开发中如何选择这两种处理机制三、手动抛出异常1.理解2.格式四、用户自定义异常类1.理解2.如何自定义异常类参考一、异常概述与异常体系结构1.定义在Java语言中,将程序执行中发生的不正常情况称为“异常”。 (开发过程中的语法错误和逻辑错误不是异常)2.分类原创 2021-08-16 17:21:37 · 295 阅读 · 0 评论 -
尚硅谷_Java零基础教程(面向对象3.0)-- 学习笔记
Java——面向对象1、关键字 static1.1、产生背景1.2、定义和特征1.3、使用1.3.1、static成员变量1.3.2、 static成员方法1.3.2.1、单例设计模式(singleton)2、理解 main 方法的语法1、关键字 static1.1、产生背景当我们编写一个类时,其实就是在描述其对象的属性和行为,而并没有产生实质上的对象,只有通过 new 关键字才会产生出对象,这时系统才会分配内存空间给对象,其方法才可以供外部调用。我们有时候希望无论是否产生了对象或无论产生了多少对象的原创 2020-12-10 16:34:24 · 283 阅读 · 0 评论 -
尚硅谷_Java零基础教程(面向对象2.0)-- 学习笔记
Java——面向对象1、继承性1.1、为什么要有继承性1.2、定义和特征1.3、定义和特征参考1、继承性1.1、为什么要有继承性为描述和处理 个人 信息,定义类 Person:package com.atguigu.java;public class Person { String name; int age; public Person() { } public Person(String name, int age) { this.name = name; t原创 2020-12-06 19:34:41 · 267 阅读 · 0 评论 -
尚硅谷_Java零基础教程(面向对象1.0)-- 学习笔记
Java——面向对象面向对象0、零基础教程目录1、课程框架面向对象0、零基础教程目录1、课程框架1、目录2、主体框架1、面向对象的理解2、类和对象3、类的内部成员原创 2020-11-26 18:51:24 · 335 阅读 · 0 评论