javaSE
文章平均质量分 59
从零开始学习Java
胖ۣۖ虎ۣۖ
探索
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Day_23 新特性
文章目录主要内容学习目标第一章 Java8新特性1.1 Lambda表达式1.1.1 函数式编程思想冗余的匿名内部类编程思想转换体验Lambda的更优写法1.1.2 Lambda表达式语法1.1.3 函数式接口1、自定义函数式接口**2、消费型接口****3、供给型接口****4、判断型接口****5、功能型接口**1.1.4 Lambda表达式练习练习1:无参无返回值形式练习2:消费型接口练习3:供给型接口练习4:功能型接口练习5:判断型接口练习6:判断型接口1.2 StreamAPI1.2.1 创建St原创 2022-02-25 09:49:44 · 217 阅读 · 0 评论 -
Day_22 注解枚举
文章目录一、注解什么是注解注解的作用JDK提供的三个基本的注解自定义注解(重点)自定义注解语法注解属性注解属性的作用注解属性的类型使用注解时给属性赋值(重要)属性赋值的特殊情况(重要)元注解元注解的作用常用的元注解注解解析二、枚举枚举的概述为什么要使用枚举枚举类的使用定义枚举类的做法案例应用枚举中添加成员变量和成员方法和构造方法枚举类的常用方法一、注解注释 : 用文字对代码进行解释说明的文字注解 : 用代码对代码进行控制,操作的 代码什么是注解注解英文是annotation,是一种代码级别的说原创 2022-02-24 16:51:30 · 544 阅读 · 0 评论 -
Day_21 反射
文章目录主要内容学习目标第一章 反射(Reflect)1.1 类加载1.1.1 类的加载过程1.1.2 类初始化1.1.3 类加载器1.2 javalang.Class类1、哪些类型可以获取Class对象2、获取Class对象的四种方式1.3 反射的应用1.3.1 通过反射获取无参构造方法并使用1.3.2 通过反射获取带参构造方法并使用1.3.3 通过反射获取私有构造方法并使用1.3.4 通过反射获取成员变量并使用1.3.4 通过反射获取成员方法并使用1.3.5 动态创建和操作任意类型的数组主要内容原创 2022-02-24 16:46:43 · 349 阅读 · 0 评论 -
Day_20 多线程
Day_20随堂笔记线程池线程池 : 用来装线程对象的池子举例: 碗 : 线程 碗盛饭 : 线程执行任务 碗柜 : 线程池 线程池 : 英雄酒馆 面向对象的方式创建线程池对象使用工具类快速创建线程池对象: Executors 静态方法: static ExecutorService newFixedThreadPool(int nThreads) : 指定最大线程数的线程池对象创建 static ExecutorService newCachedThreadPool原创 2022-02-17 16:21:11 · 236 阅读 · 0 评论 -
Day_19 多线程基础
PrintStream/PrintWriterPrintStream/PrintWriter : 输出流 -> 打印字节输出流/打印字符输出流PrintStream : System.out系统标准输出流的对象类型 特殊的输出方法: println(任意类型的对象);PrintWriter : 兼容性很强 自动刷新和自动换行 : 自动刷新: 必须在创建PrintWriter对象时打开自动刷新的开关,并且输出数据的方法必须使用 println(),printf(),format()原创 2022-02-15 20:44:42 · 277 阅读 · 0 评论 -
Day_18 IO流体系
BufferedInputStream/BufferedOutputStreamBufferedInputStream/BufferedOutputStream : 高效字节输入流/高效字节输出流 -> 缓冲流 在内存内部开辟一个 缓冲区 , 数据会先存放在缓冲区中, 当缓冲区满了再自动刷新至目标文件 //这一对流只是在创建流对象时有些不同,读写逻辑都是一模一样的!! 构造方法: BufferedInputStream(InputStream in) new Buffer原创 2022-02-14 17:36:08 · 219 阅读 · 0 评论 -
Day_17 IO流File类
Day_17随堂笔记递归算法递归 : 递进回归 代码中的体现: 方法内部调用方法本身 生活中的案例: 从前有座山,山里有座庙,庙里有个老和尚,老和尚给小和尚讲故事... 从前有座山,山里有座庙,庙里有个老和尚,老和尚给小和尚讲故事... 从前有座山,山里有座庙,庙里有个老和尚,老和尚给小和尚讲故事... 从前有座山,山里有座庙,庙里有个老和尚,老和尚给小和尚讲故事... 学编程 -> 赚钱 -> 娶媳妇原创 2022-02-13 20:12:42 · 383 阅读 · 0 评论 -
Day_16 泛型和异常处理
Day_16随堂笔记HashMap<K,V>的底层原理1. 当创建HashMap<K,V>集合的时候,会在底层创建一个容量为16,加载因子为0.75的数组 加载因子 : 扩容的时机 0.75指的是 : 当数组中的元素个数达到(容量 * 0.75)的时候,需要扩容 2. 当底层数组中元素的个数达到扩容条件,会在底层创建一个长度为原来数组长度的2倍的新数组 3. 当往HashMap底层数组添加元素的时候,若添加的Hash表位置还是默认值null的时候,不看加载因子,不扩容原创 2022-02-11 17:55:16 · 546 阅读 · 0 评论 -
Day_15 链表体系结构和红黑树
LinkedHashSetLinkedHashSet<E> : 元素不重复,元素无索引,元素存取有序LinkedHashSet<E> 是 HashSet<E> 的子类;数据结构之树结构树结构常识红黑树结构红黑树添加元素的规律(了解)TreeSetTreeSet<E> : 元素不重复,元素可以排序(元素存取无序),元素无索引常用的对象类型默认排序规则: 整数存储在TreeSet集合中默认升序!! 字符串存在TreeSet集原创 2022-02-09 20:39:18 · 856 阅读 · 0 评论 -
Day_14 ArrayList集合的底层原理
ArrayList集合的底层原理1. 当创建ArrayList集合的时候,代码底层会创建一个长度为0的数组 ArrayList<E> list = new ArrayList<>();2. 当往ArrayList集合对象中添加第一个元素的时候,底层的数组会重新创建,新创建的数组长度是10 list.add(e对象); //第一次添加元素3. 往ArrayList集合中添加第11个元素的时候,底层的数组会重新创建,新创建的数组长度是15 list.add(e对象); //原创 2022-02-08 18:08:18 · 714 阅读 · 0 评论 -
Day_13 常用类时间类迭代器
Day_13随堂笔记LocalDateTime/LocalDate/LocalTimeLocalDateTime/LocalDate/LocalTime : 年月日时分秒/年月日/时分秒LocalDateTime/LocalDate/LocalTime 是JDK8新推出的时间操作类,最小的时间单位是 纳秒;LocalDateTime/LocalDate/LocalTime 操作更像 Calendar 日历类; 解决了日历类中文化的差异问题;LocalDateTime是一个不可变的日期时间对象原创 2022-01-23 19:59:55 · 406 阅读 · 0 评论 -
Day_12 常用类String
Day_12随堂笔记StringBuilderStringBuilder / StringBuffer : 字符串缓冲区类 ("可变字符串类型") -> 便捷操作字符串对象的类 StringBuilder : 效率高,线程不安全的类 StringBuffer : 线程安全,效率低的类 StringBuilder / StringBuffer 和 String 什么关系 : 没有关系 (便捷操作字符串对象的类) 构造方法: //错误示范 : StringBuilder sb = "原创 2022-01-22 21:24:33 · 337 阅读 · 0 评论 -
Day_11 API文档
键盘录入字符串(掌握) String next() : 录入字符串的方法,但是空格之后的内容就不录入了! * String nextLine(): 录入字符串的方法,一次录入一行数据(以回车键结尾)Random的种子Random(long seed) : 带有种子参数的Random的构造种子 : 决定每一次重复执行随机数生成时序列的值String的概述(重点)String : 字符串的类 -> 引用数据类型!!字符串的特点:(重要) 1. 任何一个""引起来的内容原创 2022-01-21 18:45:38 · 232 阅读 · 0 评论 -
Day_10 面向对象多态 匿名内部类
多态(重要)多态性 : 事物的多种形态 举例: 人类 -> 黄种人,白种人,黑种人,红种人.. 水 -> 液态水,固态冰,气态水蒸气 Java基本数据类型的特性 : 自动提升和强制转换 -> 基本数据类型之间的类型转换问题! //byte,short,char < int < long < float < double 多态的本质描述的就是 : Java引用数据类型子父类之间类型转换的问题; //子类 < 父原创 2022-01-19 17:30:07 · 1599 阅读 · 0 评论 -
Day _09 抽象接口特性
finalfinal : 最终的 adj.作用在 : 类 , 成员变量 , 成员方法 , 局部变量最终的类 : 此类没有子类 -> 阉割手术最终的成员变量 : 此变量不能修改 -> 自定义常量最终的成员方法 : 此方法不能被重写最终的局部变量 : 此变量不能修改 -> 局部的自定义常量 -> 实时final自定义常量 : 必须赋予初始化值,不能被修改 自定义常量的定义格式 : public static final 数据类型 常量名 = 初始化值原创 2022-01-18 17:58:40 · 110 阅读 · 0 评论 -
Day_08 面向对象第二重点继承和一些关键字
static 关键字static : adj. 静态的static 可以修饰成员变量和成员方法; static 修饰的成员具备的特点: 1. 被static修饰的成员被所有对象共享 2. 被static修饰的成员能被类名直接调用 3. 被static修饰的成员优先于对象加载的 4. 被static修饰的成员随着类的加载而加载的静态成员内存图静态成员的访问问题非静态成员变量非静态成员方法静态成员变量静态成原创 2022-01-17 18:05:31 · 306 阅读 · 0 评论 -
Day_07 面向对象第一重点(封装)
面向对象编程思想思想 : 想法,思维方式 -> 思想决定行为编程思想 : 编程时的一种思维方式 -> 决定了如何写代码 //面向 : 重视,更看重 面向过程 : 凡事必躬亲 面向对象 : 自己的事情别人做, 懒人思维 面向函数 : 基于面向对象的,面向对象的升级版 面向切面 : //高级的编程思想都是为编程提供遍历面向对象编程思想: 自己的事情别人做, 懒人思维 面向对象思想是基于面向过程编程思想的升级;洗衣服: 面向过程 : 泡一泡 -> 搓一搓 -&g原创 2022-01-15 16:32:19 · 1929 阅读 · 0 评论 -
Day_06 二维数组和方法(很重要)
Day_06随堂笔记二维数组(了解)二维数组: 在一维数组中存储的元素都是一维数组;一维数组比作 一包烟 二维数组比作 一条烟二维数组的定义和初始化二维数组的定义格式: 数据类型[][] 数组名; //引用动态初始化: 由程序员决定数组的长度(元素个数),JVM会根据数组的元素数据类型给与默认值 数据类型[][] 数组名 = new 数据类型[m][n]; // m : 二维数组中一维数组的个数 // n : 每一个一维数组中元素的个数 黄鹤楼烟[][] 一条烟 = n原创 2022-01-14 18:44:20 · 290 阅读 · 0 评论 -
Day_05 数组的增删改查元素遍历java内存分配
数组的增删改查四类功能//数组一旦被定义长度不可以发生改变!!增: 没有删: 没有改: 先查到再改改元素 : 数组名[索引] = 修改的值;//修改指定索引位置的元素值//数组中每一个元素都有一个对应的编号 -> 索引查:查元素 : 数组名[索引]-> int[] arr = new int[3];arr[0],arr[1],arr[2]查元素个数,数组长度 : 数组名.length //length属性数组元素的遍历 //定义一个数组原创 2022-01-14 13:26:11 · 164 阅读 · 0 评论 -
Day_04 while和do...while循环
关于打印输出语句println(“world”) : 打印并换行 print(“hello”) : 只打印不换行 换行符 : “\r\n” System.out.println(); \ : 转义符 \t : 制表符 tabwhile循环格式:初始化语句1; while(判断条件语句2){循环体语句4; &nb原创 2022-01-14 13:24:22 · 158 阅读 · 0 评论 -
Day_03 循环和顺序结构
Scanner键盘录入功能 键盘录入功能 步骤: 1. 导包 import java.util.Scanner; 导包语句写在 package的下面,class的上面 使用IDEA开发,可以自动导包!原创 2022-01-14 11:02:54 · 115 阅读 · 0 评论 -
Day_02 类型转换和运算符
基本数据类型变量的类型转换基本数据类型的类型转换: 前提 : double > float > long > int > char,short,byte 自动提升 : 大类型的变量接收小类型的变量/值 强制转换 : 小的数据类型 变量名原创 2022-01-14 11:01:21 · 178 阅读 · 0 评论
分享