
Java学习之路
此专栏用来整理Java学习笔记
admin_233
这个作者很懒,什么都没留下…
展开
-
线程死锁 Java第十八天(四)
Java第十八天(四)线程 线程死锁线程 线程死锁 线程同步锁类 public class Lock {// 创建线程同步锁1 static Object lock1 = new Object();// 创建线程同步锁2 static Object lock2 = new Object();} 线程类 public class ThreadDieLock implement...原创 2020-04-19 18:56:32 · 195 阅读 · 0 评论 -
采用Runable接口实现并发与同步、线程休眠与同步锁、线程间的通信(协调同步线程)、线程的优先级、加入线程、等待线程、守护线程 Java第十八天(三)
这里写目录标题线程 并发(线程同步) 采用实现Runable接口的方式实现 当只有一个代码块使用一把锁时 当不同的代码块使用同一把同步锁时,不会发生并发异常。 针对上面的代码我们可以将第二个代码块使用方法封装起来。 当synchronized修饰非静态方法时,虽然我们不能指定锁对象,但是其同步锁对象为当前对象。 线程的休眠(sleep方法)与同步锁 线程间的通信(协调同步的线程)...原创 2020-04-17 23:30:46 · 265 阅读 · 0 评论 -
字符编码,使用指定字符编码写入文件,对字符串进行转码,创建线程,线程的状态与生命周期,实现并发(线程同步),synchronized锁详解 Java第十八天(二)
这里写目录标题字符编码 更改指定文件的字符编码格式 使用指定字符编码写入文件 对字符串进行转码线程 常用构造器 常用方法 创建线程(Thread) 第一种方式 第一种方式 自定义线程名 使用方法 使用构造器字符编码读写过程中的字符编码格式要保持一致! 存储: 在计算机中存储自读都是存储字符所对应的数值,并且以二进制的形式表示。 显示: 在显示前会去相关的编码表中去查找...原创 2020-04-15 13:22:35 · 418 阅读 · 0 评论 -
序列(持久)化对象、对象输出流(ObjectOutputStream)、对象输入流(ObjectInputStream)、使用集合序列化对象 Java第十八天(一)
序列化流(对象流Serializable) 定义:将对象以流的形式存储在硬盘上或者数据库中的过程就是写序列化流。 反序列化:从硬盘或数据库中读取的过程就是反序列化。对象输出流(ObjectOutputStream) 定义:ObjectOutputStream将Java对象的原始数据类型和图形写入OutputStream。(序列化过程)常用构造器ObjectOutputStream...原创 2020-04-01 19:29:06 · 459 阅读 · 0 评论 -
字节流与字符流转换(InputStreamReader、OutputStreamWriter)打印流(PrintWriter、PrintStream)属性集合类(Properties) Java第十七
这里写目录标题字节流与字符流转换 字节流转换为字符流(InputStreamReader) 常用构造器 使用方法 字符流转换成字节流(OutputStreamWriter) 常用构造器 使用方法打印流 字符打印流(PrintWriter) 常用构造器 其方法详见API(PrintWriter) 使用方法 将文件中的数据使用PrintWriter打印到控制台 使用打印流复制文件 字...原创 2020-03-30 16:54:12 · 838 阅读 · 0 评论 -
装饰者设计模式 Java第十六天(四)
设计模式——装饰者 目的:将类的功能进行增强。 使用继承方式实现将类的功能增强: 举例:在写入文件时的增强 我们有一个Writers类去写入文件,并且这个类有三个子类分别是:TxtWriter、Mp3Writer与Mp4Writer。 在Writers类中,我们定义了写文件的标准方法,并由三个子类去分别去实现这个方法。 再创建者三个子类的子类,用于给相对应的父类添加高效缓冲区...原创 2020-03-29 12:47:16 · 197 阅读 · 0 评论 -
实现从控制台录入信息至文件 Java第十六天(三)
Java第十六天(三)从控制台录入信息至文件实例从控制台录入信息至文件实例用户类/** * Student类 *///implements Comparable<Student>public class Student implements Comparable<Student>{ //定义学生类成员变量 private Integer id; priv...原创 2020-03-25 14:33:14 · 286 阅读 · 0 评论 -
InputStream+OutputStream+单字节/字节数组与BufferedInputStream+BufferedOutputStream+单字节/字节数组文件拷贝速度对比Java第十六天二
Java第十六天(二)对比字节输入、输出流与高效缓冲区的输入、输出流文件拷贝速度对比字节输入、输出流与高效缓冲区的输入、输出流文件拷贝速度由下面测试的结果我们可以得出结论:InputStream+OutputStream+单个字节InputStream+OutputStream+字节数组BufferedInputStream+BufferedOutputStream+单个字节B...原创 2020-03-25 10:16:48 · 191 阅读 · 0 评论 -
字节流OutputStream、InputStream、文件拷贝,BufferedInputStream、BufferedInputStream Java第十六天(一)
Java第十六天字节流 输出OutputStream 常用构造器(覆盖写入) 常用方法 使用字节流向一个文件中写入字符串 常用构造器(追加写入) 输入InputStream 常用构造器 常用方法 使用字节流做文件拷贝字节流 输出OutputStream 由于OutputStream是抽象类,所以要使用它的子类FileOutputStream。 常用构造器(覆盖写入)Fi...原创 2020-03-25 10:12:40 · 537 阅读 · 0 评论 -
JavaIO流、字符流的输入流、输出流(FileReader、BufferedReader、FileWriter、BufferedWriter)与两种文本文件的复制方法 Java第十五天(二)
IO流 IO(Input/Output):输入和输出,指的是某个设备或环境进行数据的输入或输出,Java将输入、输出抽象成流对象来解决。 例:以Java游戏程序为中心IO流在Java中从输入输出角度分类IO流在Java中从数据的角度分类输入流字符流 例:word文件、java文件可以理解为文本,我们能直接能读懂的都可以认为是字符流输出流字节流 例:图片文件...原创 2020-03-24 19:09:38 · 804 阅读 · 0 评论 -
JAVA递归、File类常用构造器及方法、目录的子文件获取、递归输出指定目录下的所有目录及文件、删除一个文件夹下的所有文件及根目录 JAVA第十五天(一)
JAVA第十五天File 常用构造器 常用方法 创建文件 创建目录 删除文件或目录 相对路径的创建于删除(项目目录) 文件的判断 文件的获取 目录的子文件获取 递归输出指定目录下的所有目录及文件 删除一个文件夹下的所有文件(不包含目录)IO流File 我们的操作系统中所有的设备的体现都是文件(包含文件夹),Java对文件做了抽象,在JavaIO包中提供了文件的操作功能。 ...原创 2020-03-22 21:20:21 · 284 阅读 · 0 评论 -
JAVA Map、HashMap、TreeMap、HashTable、LinkedHashMap JAVA第十四天(二)
JAVA第十四天(二)MapMap原创 2020-03-21 14:29:41 · 203 阅读 · 0 评论 -
Java Set、HashSet、LinkedHashSet、TreeSet(自定义对象排序)、ComparaTo方法 Java第十三天(二)
Set原创 2020-03-16 23:38:49 · 761 阅读 · 4 评论 -
JAVA List、ArrayList、LinkedList、泛型 JAVA第十三天(一)
JAVA第十三天(一)List 常用方法(存储) 常用方法(获取) 常用方法(遍历) 常用方法(删除)线程安全与不安全的解释ArrayList 由于ArrayList是List的实现类,所以其方法与List的方法一致,详见jdkAPI LinkedList特有方法(简单列举,详见JdkAPI)泛型 自定义泛型(T、W、E)List 有序的Collection,也叫序列、列表。 定义:此接口...原创 2020-03-14 19:47:25 · 257 阅读 · 0 评论 -
Java日期处理(Date类,SimpleDateFormat类、Calender类)、集合、迭代器 Java第十二天
Java第十二天日期处理 Date类 常用构造方法 常用方法 SimpleDateFormat类 常用构造方法日期处理 Date类 Date:表示特定的瞬间,精确到毫秒。 常用构造方法Date()分配Date对象并初始化此对象,以表示分配它的时间(时间精确到毫秒)例: Date date = new Date(); System.out.println(date);...原创 2020-03-14 13:00:49 · 319 阅读 · 0 评论 -
Java随机数、System类、包装类(Integer) Java第十一天
Java第十一天随机数System类随机数返回值类型 方法名 参数列表static double random() 返回值为 double值为正号,大于等于 0.0 ,小于 1.0 。 例: System.out.println(Math.random());输出结果:此方法的输出结果随机-----------------------------------------...原创 2020-03-11 19:50:23 · 623 阅读 · 0 评论 -
Java字符串获取及其他功能、可变字符串(StringBuffer)常用构造器及其方法 Java第十天(二)
Java第十天(二)字符串 字符串获取功能 其他功能字符串 字符串获取功能返回值类型 方法名 参数列表String substring(int beginIndex, int endIndex) 返回一个字符串,该字符串是此字符串的子字符串。(包含开始索引本身,)(截取从指定索开始和结束索引之间的字符串,并组成一个新的字符串) 例: String str = ...原创 2020-03-11 08:49:48 · 354 阅读 · 0 评论 -
ASCII码表、Java字符串及其构造方法、判断与获取功能 Java第十天(一)
Java第十天ASCII码表字符串(String) 字符串常用构造方法 字符串判断 字符串获取功能ASCII码表字符串(String) 在 Java 中字符串属于对象。 在定义String str = "abc;"时,“abc"作为常量存储在数据共享区,定义时首先会到数据共享区中去查找是否存在"abc"这样的字符串,如果存在就将"abc"的内存地址赋给str,若不存在则创建一个"ab...原创 2020-03-10 21:30:28 · 697 阅读 · 0 评论 -
Java异常、final、finally、finalize区别 Java第九天(二)
Java第九天(二)异常 运行期异常 自行解决(try...catch语句块) 向上抛出(不处理会自动向上抛) try...catch...catch try...catch(instanceof比较) try...catch...finally 编译期异常 try...catch自己处理 向上层抛出,直至有代码进行处理 自定义异常 错误(Error)异常 编译期异常自行处...原创 2020-03-10 12:05:55 · 165 阅读 · 0 评论 -
Java Object类、Eclipse快捷键及常用设置 Java第九天(一)
Java第九天Object类 toString方法(可重写) hashCode方法(可重写) equals方法(可重写)finalize方法Eclipse常用快捷键 Ecplise设置Object类 定义:Object是所有类的根类,所有的类都是直接或间接的去继承Object类。 Object类是类层次结构的根类,每个类都使用Object作为超类。 包括数组在内的所有对象都实现这个类的方...原创 2020-03-09 19:50:33 · 440 阅读 · 0 评论 -
JavaAPI的使用、Math类、包、Scanner类、内部类、访问限定修饰符 Java第八天
API的使用 定义:API是我们写代码的帮助文档,后续要接触很多第三方技术,他们都会提供API,所以我们必须会读懂,同样Jdk也提供了API文档。 用法:通过索引的方式根据类名来查找类的API信息。 注意: ①看包名,如果是java.lang下的类,则不用引入该包。 ②看这个指定的类是具体类、抽象类还是接口,并且注意版本号。 ③注意方法的类型、方法内的参数列表、返回值类型和成员方...原创 2020-03-09 09:44:14 · 259 阅读 · 0 评论 -
重写、final关键字、抽象类、接口、多态、模板模式 Java第七天
重写(Override) 定义:当子类继承父类时,子类的成员方法和父类的成员方法相同,但方法体不同,这种子类的成员方法将父类的成员方法覆盖的写法叫重写。 判断依据:访问限定修饰符、返回值类型、成员方法名、参数列表。 重写与重载的区别: 重写(override):在父子类的继承中有相同的方法,唯一不同的是方法体,一般是父类的成员方法满足不了之类的需求才会重写。 重载(overloa...原创 2020-03-06 19:45:39 · 132 阅读 · 0 评论 -
面向对象(类、局部变量、成员变量、匿名对象、封装、this关键字、构造器) Java第五天
面向对象OOP object Oriented Programming(万物皆对象) 面向过程 定义:分析解决问题所需要的步骤,然后用函数来一步一步的调用实现。 例:将大象放入冰箱 ①打开冰箱 ②将大象放入冰箱 ③关闭冰箱 面向对象 定义:抽取一类具有相同属性和行为的事物 例:冰箱:打开门、关上门; 大象:走路; 面向对象关注的是哪些事物有什么样的功能,强调的是具体的...原创 2020-03-04 17:10:53 · 170 阅读 · 0 评论 -
Java 函数与数组 Java第四天
函数(方法) 定义:方法是一段能完成独立功能的代码块,我们只需要写一次方法,此方法就可以多次被调用,依次来提高代码的复用性。 函数(方法)的语法://权限修饰符 或者为void 或为函数名 这两个统称为参数列表,也可有也可无public static 返回值类型 方法名 (数据类型 参数名){ 方法体;//当返回值类型为void时,没有...原创 2020-03-01 17:37:47 · 160 阅读 · 0 评论 -
程序流程控制(if if...else switch while do...while for循环) Java第三天
分支判断if适用于区间判断,switch适用于等值判断 1.简单ifif(条件判断表达式){ 执行语句; } 当判断表达式为true时才会执行执行语句,如果没有{ }作为if体,那么if的直接下面的第一行语句就是if体。 2.if…elseif(条件判断表达式){ 执行语句1;}else{ 执行语句2; } 当条件判断表达式结果为true时,执行执行语句1否...原创 2020-02-25 14:03:42 · 368 阅读 · 0 评论 -
数据类型及其转换、常量、变量与运算符 Java第二天
数据类型 作用:可以约束用户定义所变量占用的内存空间大小和内存空间中所能存储的数据类型。 字节型是最小的整数类型。 字节:一小组相邻的二进制数码,通常以8位作为一个字节。例:01111111(第一位是符号位)。 float变量在存储float型数据时保留8位有效数字,其取值是从第一个非0开始,向后取8位;doublet变量在存储double型数据时保留16位有效数字,其取值是从第一...原创 2020-02-24 18:00:11 · 541 阅读 · 0 评论 -
Java 认识与安装 Java第一天
历史Java语言:①java SE(标准版)是java基础,早期称为j2se,2005年改名为javaSE。 ②java ME(移动版)适合移动端的开发,早期称为j2me,2005年改名为javaME。 ③java EE(企业版)面向企业级关系系统的。特点:语法简单、面向对象、平台无关、动态运行过程:源码(我们手写的)----→字节码(编译后产生的.class文件)---...原创 2020-02-23 12:09:12 · 113 阅读 · 0 评论 -
static关键字、单例模式、类的继承、super关键字 Java第六天
static关键字 在静态方法中不能使用成员变量,只能使用静态属性; 对属性名称静态属性(类属性)成员变量(对象属性)定义被static关键字修饰的属性不被static关键字修饰的属性定义语法static 数据类型 属性名数据类型 属性名访问语法类名.类属性名;对象名.属性名;存储位置(内存中)数据共享区堆中根据对象创建的空间中...原创 2020-03-05 12:42:14 · 322 阅读 · 0 评论 -
Java的常用语→别称与dos命令、转义字符、Eclipse常用快捷键(持续更新)
Java的常用语→别称别称常用语函数方法实例对象访问调用输出写入常量池数据共享区动态参数可变参数成员变量对象的属性成员方法对象的方法、行为static成员变量静态变量static属性类属性、静态属性static方法类方法、静态方法static成员内部类静态内部类参数列表方法()内...原创 2020-02-23 10:20:46 · 316 阅读 · 0 评论