
Java从零开始
文章平均质量分 52
Java笔记
ShanHai山海
坚持写bug的Java菜鸟山海。自有归期,自有相逢!
展开
-
json与java的转化
JSONObject.parseObject():将JSON字符串转化为实体类对象,传入参数为JSON字符串以及实体类的类型。如果传参加入实体类的类型,则返回实体类的集合;不传参实体类类型则返回JSON字符串的集合。JSON.parseArray():用于处理数据比较多的,用[]包裹的数据。JSON.toJSONString():将实体类对象转换为JSON字符串。JSON.parseObject():将JSON字符串转化为实体类。JSON工具包使用的是com.alibaba.fastjson。...原创 2022-08-15 09:37:39 · 543 阅读 · 0 评论 -
JUC进阶
java.util工具包,包,分类Runnable 没有返回值、效率相比于Callable相对比较低进程:一个程序(QQ.exe Music.exe) 的集合一个进程往往可以包含多个线程,至少包含一个!java默认有几个线程? 2个 main、GC线程:开了一个oneNote,写字,自动保存(线程负责)对于Java而言:Thread、Runnable、Callable并发编程:并发、并行并发(多线程操作同一个资源)并行(多个人一起行走)并发编程的本质:充分利用CPU的资源1.来自不同的类wait原创 2022-08-01 08:37:35 · 184 阅读 · 0 评论 -
Java8新特性之函数式接口
Java8新特性之函数式接口原创 2022-07-29 09:35:46 · 314 阅读 · 0 评论 -
Java8新特性之新日期时间API
Java8新特性之新日期时间API原创 2022-07-26 16:02:03 · 672 阅读 · 0 评论 -
Java8新特性
Lambda表达式函数式接口方法引用Stream API新日期时间API原创 2022-07-26 13:49:28 · 625 阅读 · 0 评论 -
Java8新特性之Stream API
Java8新特性之Stream API原创 2022-07-26 09:20:50 · 583 阅读 · 0 评论 -
Java8新特性之方法引用
Java8新特性之方法引用原创 2022-07-25 20:29:18 · 827 阅读 · 0 评论 -
Java8新特性之Lambda表达式
Java8新特性之Lambda表达式原创 2022-07-25 20:27:55 · 128 阅读 · 0 评论 -
数据结构与算法
数据结构与算法原创 2022-07-19 16:35:16 · 198 阅读 · 0 评论 -
常见的异常
运行时异常1、NullPointerException 空指针异常2、ArithmeticException 数学运算异常3、ArrayIndexOutOfBoundsException 数组下标越界异常4、ClassCastException 类型转换异常5、NumberFormatException 数字格式不正确异常编译异常编译异常就是在编译期间就要处理的异常。编译器在编译期间会进行检查,不处理该异常,就无法通过编译。编译异常必须处理!1、SQLException 操作数据库时,查询原创 2022-02-21 15:27:42 · 172 阅读 · 0 评论 -
2021-08-31 JavaSE思维导图
原创 2021-08-31 17:45:41 · 196 阅读 · 0 评论 -
多线程编程
线程是存在生命周期的。线程的生命周期分为5中不同的状态,由始至终分别是:1、新建状态处于新建状态中的线程对象,并不是一个独立的线程,无法运行,只有当被触发start方法时才会进入准备状态。新建状态是线程生命周期中的第一个状态,也是初始状态2、准备状态处于新建状态的线程对象,被调用了start方法,将进入准备状态;处于准备状态的线程随时都可能被系统选中进入运行状态,从而执行线程;可能同时有多个线程处于准备状态,然而究竟哪一个线程将进入运行状态,这是不确定的;被阻塞的线程再次被唤醒时,并不会进入运行原创 2021-08-24 14:20:35 · 105 阅读 · 0 评论 -
0823嵌套类和内部类
嵌套类分为两种类型:静态嵌套类和非静态嵌套类。平常我们使用的最多的是非静态嵌套类,也就是被称为内部类,其中内部类又可以分为三种:1、在一个类(外部类)中直接定义的内部类2、在一个方法(外部类的方法)中定义的内部类3、匿名内部类对于内部类,通常在定义类的class关键字前,不加public或private等修饰词。内部类的成员只在内部类可见,若外部类或同层次的内部类需要访问,需要创建类的对象,不可以直接访问内部类的变量定义在方法中的内部类的可见性更小,它只在方法内部可见,在外部类及外部类的其它方法中原创 2021-08-23 22:34:03 · 93 阅读 · 0 评论 -
0821字节缓冲流、字符缓冲流
将String类型转化为int类型:Integer.parseInt字节缓冲流什么是缓冲流BufferedInputStream类的常用方法通过BufferedInputStream类读取文件的内容BufferedOutputStream类的常用方法字符缓冲流BufferedReader类的常用方法BufferedWriter类的常用方法代码实例package ShangWu;import java.io.BufferedInputStream;import java原创 2021-08-21 15:33:43 · 131 阅读 · 0 评论 -
0820--IO流的概念和分类+字节流
一、流:stream流的分类IO包中的类层 结构输入输出机制二、流的分类按流向分类按数据单元分类字节流InputStream的类层结构InputStream类的常用方法OutputStream的类层结构OutputStream类的常用方法代码实例package test2;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutput原创 2021-08-20 17:02:48 · 96 阅读 · 0 评论 -
0820--File类
File类是用来操作文件或目录属性而不可以操作文件内容的类。文件目录分隔符File的构造方法如何创建File对象(三种构造方法)1、File f = new File("D:/myDir/hello.txt");2、File f = new File(“D:/myDir”, “hello.txt”);3、File parent = new File("D:/myDir"); File f = new File(parent, "hello.txt");File类操作文件的常用方法代码原创 2021-08-20 16:55:46 · 163 阅读 · 0 评论 -
0820--异常处理
什么是异常处理异常处理又叫例外处理。对程序进行异常处理有两个目的,一是发现程序中出现的异常,二是对出现的异常进行相对操作或通知程序员进行修改。使用try-catch语句可以很好的完成这两个目的。try-catch语句和其他控制语句一样也是具有基本语法格式的。package shangWu;/** * @author ShanHai: * @version 创建时间:2021年8月20日 上午9:02:00 */public class Test1 { public static void原创 2021-08-20 16:49:24 · 121 阅读 · 0 评论 -
0819常用类
头疼、确实简单,但是内容是相当丰富,够记一段时间了。代码注释即为用法。1、String类字符串就是一连串的字符序列,Java提供了String和StringBuffer两个类来封装字符串,并提供了一系列的方法来操作字符串对象1.1、equals方法对象比较的方法,将此字符串与制定的对象进行比较,返回布尔型结果1.2、substring方法字符串截取方法,返回截取的字符串1.3、split方法字符串拆分的方法,返回拆分后的字符串数组1.4、indexOf方法字符查找的方法,返回值为整数型,原创 2021-08-19 16:38:04 · 144 阅读 · 0 评论 -
08-18集合框架之Map
Map用于保存具有映射关系的数据,因此Map集合里保存着两组值,一组值用于保存Map里的key,另外一组值用于保存Map里的value,key和value都可以是任何引用类型的数据。Map的key不允许重复;key和value之间存在单项一对一关系,即通过指定的key,总能找到唯一的、确定的value。从Map中取出数据时,只要给出指定的key,就可以取出对应的value一、HashMap1.1、Map.EntryMap中包括了一个内部类Entry,该类封装了一个key-value记录1.2、常用原创 2021-08-18 18:29:07 · 122 阅读 · 0 评论 -
0813final关键字、抽象类和接口
第13讲 :final关键字final可以用于类的前面(成为最终类也就是说这个类不能有子类)。如果一个方法修饰为final方法,那么这个方法就不能被子类重写,同时,final方法的行为是不允许子类篡改的。虽然final修饰的方法不能被子类重写,但是可以被子类继承。final修饰的成员变量,对象虽然可以操作使用它,但是不能对它进行更改操作。第14讲:抽象类和接口一、抽象类1.1、abstract关键字abstract抽象修饰符可以修饰方法和类,使用abstract修饰符修饰的方法称为抽象方法,原创 2021-08-13 15:20:08 · 158 阅读 · 0 评论 -
0814知识总结
一:有参构造方法的作用?1、实例化对象,在堆内存中开辟内存空间2、初始化成员变量二:封装:隐藏细节(把属性设置为private),提供访问值的通道(提供Getter和Setter方法)Getter方法的作用是:获取私有成员变量的值Setter方法的作用是:给私有成员变量赋值(初始化)三:继承:1、子类通过extends关键字继承父类2、子类可以拥有父类的所有非私有成员3、子类可以通过super关键字访问父类的非私有成员4、如果父类提供了有参构造方法,子类必须实现四:抽象方法:1、通过原创 2021-08-14 13:18:16 · 106 阅读 · 0 评论 -
0816集合框架之List
基本数据类型和引用数据类型Java中的数据类型包含基本数据类型和引用数据类型,引用数据类型可以实例化成为对象,我们可以直接操作对象所提供的功能,但是基本数据类型只可以表示数值而无法提供更多可操作的功能,所以就需要将Java的基本数据类型转换成对应的引用数据类型以提高扩展性在Java中,每一个基本数据类型都对应一个将其转换成引用数据类型的类,称之为包装类;由基本数据类型转换成其对应的包装类的过程称之为装箱由包装类转换成其对应的基本数据类型的过程称之为拆箱 public static void m原创 2021-08-16 20:34:39 · 96 阅读 · 0 评论 -
0811继承、重写
第九讲:面向对象之继承今日知识:父类使用有参构造,子类也必须有有参构造,无参构造一样的1:什么是继承?Java中使用extends关键字实现类的加载机制称之为继承,子类自动拥有了基类(也叫父类,superclass)的所有成员,即成员变量和成员方法2:访问权限:如果父类中变量定义成了private私有变量,则在子类中是不可以调用的,其只能在父类的方法中调用,子类和其他类都不可以。3:ps:Java只支持单继承,不支持多继承,即:一个子类只能有一个基类(父类),但是一个基类可以有多个子类子类对原创 2021-08-12 15:56:02 · 99 阅读 · 0 评论 -
0817集合框架之Set
Set集合类似于一个罐子,程序可以把多个元素扔进罐子里,而Set集合不能记住元素添加的顺序;Set集合中不允许保存相同的对象根据数组的某一变量将数组进行排序,实现Comparable接口。重写compareTo方法,this.的值大于o.的值,返回1,反之-1,相等为0.测试类里Collections.sort()进行比较//测试类Collections.sort();public int compareTo(User o) { if(this.age>o.getAge()){原创 2021-08-17 16:25:59 · 111 阅读 · 0 评论 -
0812面向对象之多态
第十二讲:面向对象之多态今日知识:调用的方法是父类对象 就用向上转型,如果这个方法是子类特有的,就得向下 转型1:多态(动态绑定)动态绑定是指在运⾏期间,判断所引⽤对象的实际类型,根据其实际的类型调⽤相应的⽅法,多态即:⼀个对象具有多种状态的⾏为。多态的3个必要条件要有继承要有重写父类的引用指向子类的对2:向上转型父类的引用指向子类的对象,称为向上转型3:向下转型代码中将子类的引用指向了父类的对象,该写法是对象的向下转型;向下转型不是自动的,需要强制类型转换符进行转换。...原创 2021-08-12 16:15:24 · 106 阅读 · 0 评论 -
0810面向对象之封装
面向对象之封装一:面向对象的特点封装、继承、多肽二:Static关键字2.1:静态变量在类中,用static关键字声明的成员变量称为静态成员变量,它是该类的公用变量,在第一次使用时被初始化,对于该类的所有对象来说,静态成员变量只有一份。2.2:静态方法用static关键字声明的方法叫做静态方法,在静态方法中,不可以使用非静态的成员2.3:在对象间实现类的成员属性共享通过类名调用,生命周期与类相同public class 类名{访问修饰符 static 返回类型 方法名称([参数列表])原创 2021-08-10 23:45:01 · 120 阅读 · 0 评论 -
0804第六讲:数组
数组int arr[] = {1, 2, 3, 4, 5};数组可以看成是多个相同类型的数据的组合,对这些数据统一进行管理。数组变量属于【引用数据类型】,可以把数组看成是一个对象,数组中的每个元素相当于该对象的成员变量。数组中的元素可以是任何数据类型,包括基本数据类型和引用数据类型。2.1.1、声明数组的方法数据类型 数组名称[];或数据类型[] 数组名称;2.1.2、示例int arr[];int[] arr1;2.2、数组的创建2.2.1、创建静态数组声明数组时,给出了数组的原创 2021-08-04 18:55:51 · 125 阅读 · 0 评论 -
ThreeDay0803
第五讲:循环控制语句**一:while循环1:while循环while(布尔表达式){循环语句}**特点:**只要条件为真,就执行代码块,知道布尔表达式为false(表达式值为假)时停止。2:do-while循环do{循环代码块}while(布尔表达式);**特点:**首先先执行一次代码块,再判断条件是否为真,若为真,则重复执行;若为假,则停止循环。3:while和do-while 的比较:while先测试条件,再决定是否循环。do-while先进入循环,再判断条件。至少会有一原创 2021-08-03 16:10:44 · 118 阅读 · 0 评论 -
TwoDay0802
第四讲:逻辑控制语句if语句:1:if (){ }else{ }2:if(){}else if(){}else if(){}else{}switch语句switch(){ case : 语句 break; case: 语句 break; default; 语句 break}switch用作判断的表达式必须是符合byte、short、int、char类型的表达式,而不能使用double、long、boolean,也不能使用字符串(原创 2021-08-02 15:17:11 · 115 阅读 · 0 评论 -
第一阶段OneDay(8.1)
OneDay(8.1)第一讲:HellowWorld第二讲:变量和常量第三讲:运算符第一讲:HellowWorld一:Java中常用的命名规范。**包名:**所有单词所有字母小写。aaabbbccc类名、接口名:所有单词首字母大写。AaaBbbCcc**变量名、函数名:**除第一个单词外,其他所有单词首字母大写。aaaBbbCcc**常量:**所有单词所有字母都大写,单词之间用斜划线分开。AAA_BBB_CCC二:计算机发展史第一代语言:纯机器语言,只有机器能读懂,人根本读不懂。第二原创 2021-08-01 19:24:46 · 158 阅读 · 1 评论