JavaEE
ForeverYoung19995
这个作者很懒,什么都没留下…
展开
-
Scanner String常用方法 next方法与nextLine方法的区别 toString方法 ==与equal方法的区别
原创 2019-07-10 22:15:17 · 482 阅读 · 0 评论 -
设计模式 | 单例模式
设计模式 | 单例模式1.核心作用2.常见场景3.单例模式的优点4.常见的五种单例模式实现方式4.1 饿汉式4.2 懒汉式4.3 DCL懒汉式(双重检测锁模式)4.4 静态内部类4.5 枚举单例5.五种实现单例模式的方式的对比1.核心作用保证一个类只有一个实例,提供一个访问该实例的全局访问点。2.常见场景3.单例模式的优点4.常见的五种单例模式实现方式4.1 饿汉式步骤:私有化构造器类初始化时,立即加载对象【不涉及线程安全问题】提供获取该对象的方法【没有Synchronized,原创 2020-07-19 12:50:24 · 161 阅读 · 0 评论 -
JavaEE | 线程安全(锁、线程间通信、内存可见性、CAS、线程的状态)
JavaEE | 线程安全(锁、线程间通信、内存可见性、CAS、线程的状态)1.案例与线程安全1.1 两种方式模拟电影院售票1.2 买电影票出现了同票和负数票的原因分析2. 保证线程安全之synchronized2.1 概述2.2 同步代码块2.3 同步方法2.4 静态同步方法2.5 锁小结2.6 线程安全的类3. 保证线程安全之Lock锁4. 死锁5 生产者-消费者问题5.1线程间通信5.2 等待唤醒机制与示例6 内存可见性6.1 volatile 关键字6.2 CSA算法与AtomicInteger关键原创 2020-07-18 21:56:07 · 510 阅读 · 0 评论 -
JavaEE | 多线程基础
JavaEE | 多线程基础1 多线程与多进程1.1 进程1.2 线程1.3 线程与进程1.4 并行和并发1.5 JVM的启动是多线程的2 多线程实现的三种方式2.1 方式一:继承Thread类2.1.1 实现步骤2.1.2 实例2.2 方式二:Runnable接口 (避免单继承的局限性,run方法没有返回值)2.2.1 实现步骤2.2.2 实例2.3 方式三:Callable 接口(call方法有返回值)2.3.1 实现步骤2.2.2 实例3 线程的设置3.1 获取和设置线程对象名称3.2 线程调度与线原创 2020-07-18 20:48:18 · 453 阅读 · 0 评论 -
JavaEE | 集合之HashMap与ConcurrentHashMap(看完多线程后补充)
HashMap1 HashMap1.1 JDK 1.7:数组(table)+链表(Entry)1.2 JDK1.8:数组(table)+链表(Node)+红黑树2 ConcurrentHashMap(看完多线程后补充)1 HashMap1.1 JDK 1.7:数组(table)+链表(Entry)HashMap中的核心成员:初始化桶的大小:默认2^4=16;桶最大值:2^30负载因子:0.75这里的负载因子指的是,当HashMap中的元素达到(160.75 = 12)时,就会自动扩容,默认原创 2020-07-17 10:57:01 · 208 阅读 · 0 评论 -
JavaEE | 基本类型包装类
JavaEE | 基本类型包装类1.引入原因2.基本类型与包装类型的对应关系3.常用操作3.1 基本数据类型 <==> 包装类型3.1.1 基本数据类型-> 包装类型3.1.2 包装类型 -> 基本数据类型3.2 基本数据类型 <==> String (都使用静态方法)3.2.1 String -> 基本类型3.2.2 基本类型-> String1.引入原因int,char,double等四类八种基本类型不是对象,无法直接调用方法对基本类型进行判断,因此原创 2020-07-16 10:04:34 · 134 阅读 · 0 评论 -
Java | Comparable接口和Comparator接口比较
Comparable接口和Comparator接口的比较:https://baijiahao.baidu.com/s?id=1652248417256209703&wfr=spider&for=pc转载 2020-07-14 22:17:17 · 87 阅读 · 0 评论 -
JavaEE | 语言基础部分、对象与类
1 Java语言基础1.1 Java语言特点 简单性 解释性 面向对象 高性能 分布式处理 多线程 健壮性 多态 结构中立 安全性 开源 跨平台1.2 Java语言跨平台原理java的跨平台指的是java编写的程序可以在不同的平台上运行java跨平台的前提是平台上安装了JVM(java虚拟机,Java Virtual Machine),JVM控制java程序在不同平台上的运行,不同平台上的JVM是不同的。JAVA语言是跨平台的,而JVM不是跨平台的。1.原创 2020-07-10 17:29:20 · 141 阅读 · 0 评论 -
Java|StringBuffer
Java|StringBufferStringBuffer与String的区别构造方法添加功能删除功能替换和反转功能截取功能StringBuffer和String的相互转换StringBuffer和StringBuilder的区别StringBuffer是线程安全的可变字符序列1.StringBuffer与String的区别String 他是一个长度固定的字符序列,一旦定...原创 2019-07-18 23:38:31 · 114 阅读 · 0 评论 -
JavaEE | 可变参数
JavaEE | 可变参数可变参数概述: 定义方法的时候不知道该定义多少个参数格式: 修饰符 返回值类型 方法名(数据类型… 变量名){}注意事项:这里的变量其实是一个数组如果一个方法有可变参数,并且有多个参数,那么,可变参数肯定是最后一个示例:public class MyTest2 { public static void main(String[] args) { //可变参数 int sum=add(1,2);原创 2020-05-24 14:43:09 · 101 阅读 · 0 评论 -
JavaEE | 增强for循环
JavaEE | 增强for循环增强for概述:简化数组和Collection集合的遍历格式:for(元素数据类型 变量 : 数组或者Collection集合) {使用变量即可,该变量就是元素}注意:使用增强for循环时,不可以在循环过程中增减数组或者集合,否则会报并发修改异常的错误;如果一定要增减元素,用传统的for循环即可。...原创 2020-05-24 14:37:31 · 196 阅读 · 0 评论 -
JavaEE | 泛型
JavaEE | 泛型1.泛型简介2. 使用举例3.通配符1.泛型简介泛型概述:是一种把类型明确的工作推迟到创建对象或者调用方法的时候才去明确的特殊的类型。这是一种参数化类型,即把类型当作参数一样的传递。泛型格式 : <数据类型> 这里的数据类型只能是引用数据类型使用范围:泛型可以加在接口上,类型上,方法上泛型好处:(1): 把运行时期的问题提前到了编译期间(2): 避免了强制类型转换,向下转型(3):优化了程序设计,解决了黄色警告线注意:泛型只在编译期有效 但在运行期就擦原创 2020-05-24 12:20:24 · 154 阅读 · 0 评论 -
Java|网络编程
Java|网络编程1.网络编程概述2.网络编程三要素3.网络编程三要素之IP3.1 IP概述3.2 IP地址的组成3.3 IP地址分类3.4 InetAddress类4.网络编程三要素之端口5.网络编程三要素之协议6.Socket套接字7.使用UDP协议进行通信7.1 UDP协议使用到的类7.2 几个案例7.2.1 简单的UDP协议发送与接收数据7.2.2 UDP协议发送端的数据来自于键盘录入7....原创 2019-08-02 01:13:59 · 444 阅读 · 0 评论 -
Java|不同类型数据的相互转换
Java| 类型转换的总结StringBuffer和String的相互转换String和int数据的相互转换1. StringBuffer和String的相互转换1.1 String转StringBuffera) 通过构造方法 推荐StringBuffer sb = new StringBuffer("abc");b) 通过append()方法StringBuffer st...原创 2019-07-18 23:50:01 · 334 阅读 · 0 评论 -
Java|Stream API
Java|Stream API1 Stream API 概述1.1 Stream API1.2 流(Stream)1.3 Stream 的操作三个步骤2.创建Stream的方式2.1 Collection 的方法2.2 Arrays 的静态方法2.3 Stream 的静态方法2.4 创建无限流3.Stream 的中间操作3.1 筛选与切片3.2 映射3.3 排序4.Stream 的终止操作4.1...原创 2019-08-06 00:18:05 · 91 阅读 · 0 评论 -
JAVESE学习笔记 构造方法 static关键字 静态变量与成员变量 Math类 代码块 继承 的概念
JAVE SE 学习笔记整理day 7构造方法 static关键字 静态变量与成员变量 Math类day 8代码块 继承 super标识符 方法重载 final关键字原创 2019-06-19 17:13:34 · 201 阅读 · 0 评论 -
Java|反射机制与动态代理
Java|反射机制1.类的加载概述与概述1.1 类的加载概述1.2 类的加载时机1.类的加载概述与概述1.1 类的加载概述当程序要使用某个类时,如果该类还未被加载到内存中,则系统会通过加载,连接,初始化三步来实现对这个类进行初始化。加载就是指将class文件读入内存,并为之创建一个Class对象。任何类被使用时系统都会建立一个Class对象。连接a) 验证 : 是否有正确的...原创 2019-08-05 10:51:57 · 96 阅读 · 0 评论 -
Java|IO流之字节流
Java|IO流之字节流与字节缓冲流字节流:FileInputStream、FileOutputStream;字节缓冲流:BufferedInputStream、BufferedOutputStreamIO流概述及其分类FileInputStreamFileOutputStream示例:复制文本文件示例:流的异常处理字节缓冲流:BufferedInputStream与Buffer...原创 2019-07-25 22:37:15 · 108 阅读 · 0 评论 -
Java|IO流之字符流
Java|IO流之字符流字符流出现的原因String类中的编码和解码字符转换流:InputStreamReader字符转换流:OutputStreamWriter字符转换流的子类:FileReader和FileWriter字符缓冲流:BufferedReader 和 BufferedReader几个示例7.1 把ArrayList集合中的字符串数据存储到文本文件7.2 把文本文...原创 2019-07-25 23:22:12 · 211 阅读 · 0 评论 -
JavaEE | 集合1之Collection
Java|集合之Collection集合类简介-1.1 集合类的由来-1.2 数组和集合的区别Collection集合-2.1 功能概述-2.2 集合Collection的遍历1. 集合类简介1.1 集合类的由来面向对象语言对事物的体现都是以对象的形式,所以为了方便对多个对象的操作,Java就提供了集合类。1.2 数组和集合的区别1 :长度区别数组的长度是固定...原创 2019-07-26 00:09:48 · 468 阅读 · 0 评论 -
Java|异常
Java|异常异常的概述和分类RuntimeException(运行期异常)– JVM默认处理方式– 手动捕获异常:try…catchfinally关键字的特点及作用–面试题1:final,finally和finalize的区别–面试题2:如果catch里面有return语句,请问finally的代码还会执行吗?如果会,请问是在return前还是return后编译期异常自定义异...原创 2019-07-22 23:07:07 · 154 阅读 · 0 评论 -
Java|File
Java|File概述构造方法成员方法文件名称过滤器1. 概述File文件和目录路径名的抽象表示形式, 这个File类可以用来表示文件,也可以用来表示目录 File file = new File("C:\\Users\\Administrator\\Desktop\\aaa.txt"); System.out.println(file.isFile());...原创 2019-07-22 23:27:33 · 96 阅读 · 0 评论 -
JavaEE | 集合2之Map
Java|Map、HashMap、Hashtable、linkedHashMap、TreeMapMap概述Map接口和Collection接口的的区别Map集合功能概述Map集合的遍历HashMapHashtablelinkedHashMapTreeMap练习:统计字符串中每个字符出现的次数1. Map概述 //键 值 //s001---...原创 2019-07-23 00:09:40 · 189 阅读 · 0 评论 -
JavaEE | 集合嵌套: HashMap 嵌套 HashMap、HashMap 嵌套 ArrayList、ArrayList 嵌套 HashMap、ArrayList 嵌套ArrayList
Java|集合嵌套 HashMap 嵌套 HashMap、HashMap 嵌套 ArrayList、ArrayList 嵌套 HashMapHashMap 嵌套 HashMapHashMap 嵌套 ArrayListArrayList 嵌套 HashMap1. HashMap 嵌套 HashMap //集合嵌套 HashMap 嵌套 HashMap /* ...原创 2019-07-23 00:14:52 · 540 阅读 · 0 评论 -
JavaEE | 集合的一个练习:模拟洗牌发牌
Java|集合的一个练习:模拟洗牌发牌思路:代码package PokerGame;import java.util.*;public class MyTest { public static void main(String[] args) { //1.HashMap存储牌盒 //2.ArrayList记录洗牌后的顺序 //3...原创 2019-07-23 00:19:51 · 173 阅读 · 0 评论 -
Java|枚举
Java|枚举1.使用枚举的注意事项2.枚举类的常见方法2.示例2.1 枚举用于空参构造 枚举用于switch语句2.2 枚举用于有参构造2.3 枚举用于抽象方法1.使用枚举的注意事项定义枚举类要用关键字enum枚举类的第一行上必须是枚举项,最后一个枚举项后的分号是可以省略的,但是如果枚举类有其他的东西,这个分号就不能省略。建议不要省略。枚举类可以有构造器,但必须是private的,它...原创 2019-08-05 11:56:16 · 245 阅读 · 0 评论 -
Java | Lambda表达式
Java|Lambda表达式1.Lambda表达式概述2.Lambda表达式的书写语法3.函数式接口4.Lambda表达式作为参数传递的示例5.方法引用6.构造器引用1.Lambda表达式概述Lambda 是一个匿名函数,我们可以把 Lambda表达式理解为匿名内部类的一种简写方式。可以写出更简洁、更灵活的代码。作为一种更紧凑的代码风格,使Java的语言表达能力得到了提升。引入示例:我们...原创 2019-08-05 17:33:55 · 440 阅读 · 1 评论