![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
Hsq1103
这个作者很懒,什么都没留下…
展开
-
Java基础知识之线程
/** * 实现线程的第一种方式: * 编写一个类,直接继承java.lang.Thread,重写run方法。 * * 怎么创建线程对象? new就行了。 * 怎么启动线程呢? 调用线程对象的start()方法。 * * 注意: * 亘古不变的道理: * 方法体当中的代码永远都是自上而下的顺序依次逐行执行的。 * * 以下程序的输出结果有这样的特点: * 有先有后。 * 有多有少。 */public class .原创 2021-03-25 19:18:08 · 149 阅读 · 0 评论 -
Java基础知识之线程案例
/** * 银行账户 * 使用线程同步机制,解决线程安全问题。 */public class Account { private String no; private double balance; //(Account对象是多线程共享的,Account对象中的实例变量obj也是共享的。) Object obj=new Object(); public Account() { } public Account(String no,.原创 2021-03-25 11:44:48 · 148 阅读 · 0 评论 -
Java基础知识之Map集合
import java.util.Collection;import java.util.HashMap;import java.util.Map;/** * java.util.Map接口中常用的方法: * 1、Map和Collection没有继承关系。 * 2、Map集合以key和value的方式存储数据:键值对 * key和value都是引用数据类型。 * key和value都是存储对象的内存地址。 * key起到主.原创 2021-03-25 11:06:25 · 244 阅读 · 0 评论 -
Java基础知识之Properties集合
import java.util.Properties;/** * 目前只需要掌握Properties属性类对象的相关方法即可。 * Properties是一个Map集合,继承Hashtable,Properties的key和value都是String类型。 * Properties被称为属性类对象。 * Properties是线程安全的。 */public class PropertiesTest { public static void main(String[] args) .原创 2021-03-25 11:06:04 · 128 阅读 · 0 评论 -
Java基础知识之TreeSet集合
import java.util.Set;import java.util.TreeSet;/***1、TreeSet集合底层实际上是一个TreeMap*2、TreeMap集合底层是一个二叉树。*3、放到TreeSet集合中的元素,等同于放到TreeMap集合key部分了。* TreeSet集合存储元素特点:* 1、无序不可重复的,但是存储的元素可以自动按照大小顺序排序!* 称为:可排序集合。** 2、无序:这里的无序指的是存进去的顺序和取出来的顺序不同。并且.原创 2021-03-25 11:05:43 · 327 阅读 · 0 评论 -
Java基础知识之HashSet集合
import java.util.HashSet;import java.util.Set;/** * HashSet集合 * 无需不可重复 */public class HashSetTest{ public static void main(String[] args) { Set<String> str=new HashSet<>(); str.add("张三"); str.add("李四"); .原创 2021-03-25 11:05:20 · 88 阅读 · 0 评论 -
Java基础知识之Vector集合
import java.util.*;/** * Vector: * 1、底层也是一个数组。 * 2、初始化容量:10 * 3、怎么扩容的? * 扩容之后是原容量的2倍。 * 10--> 20 --> 40 --> 80 * * 4、ArrayList集合扩容特点: * ArrayList集合扩容是原容量1.5倍。 * * 5、Vector中所有的方法都是线程同步的,都带有s.原创 2021-03-24 17:41:50 · 260 阅读 · 0 评论 -
Java基础知识之LinkedList集合
import java.util.LinkedList;import java.util.List;/** * 链表的优点: * 由于链表上的元素在空间存储上内存地址不连续。 * 所以随机增删元素的时候不会有大量元素位移,因此随机增删效率较高。 * 在以后的开发中,如果遇到随机增删集合中元素的业务比较多时,建议 * 使用LinkedList。 * * 链表的缺点: * 不能通过数学表达式计算被查找元素的内存地址,每一次查找都是从头 * .原创 2021-03-24 17:34:30 · 437 阅读 · 0 评论 -
Java基础知识之ArrayList集合
import java.util.ArrayList;import java.util.List;/** * ArrayList集合: * 1、默认初始化容量10(底层先创建了一个长度为0的数组,当添加第一个元素的时候,初始化容量10。) * 2、集合底层是一个Object[]数组。 * 3、构造方法: * new ArrayList(); * new ArrayList(20); * 4、ArrayList集合的扩容:.原创 2021-03-24 17:28:36 · 127 阅读 · 0 评论 -
Java基础知识之List集合
import java.util.ArrayList;import java.util.Iterator;import java.util.List;/** * 测试List接口中常用方法 * 1、List集合存储元素特点:有序可重复 * 有序:List集合中的元素有下标。 * 从0开始,以1递增。 * 可重复:存储一个1,还可以再存储1. * 2、List既然是Collection接口的子接口,那么肯定List接口有自己.原创 2021-03-24 17:14:32 · 105 阅读 · 0 评论 -
Java基础知识之Collection
import java.util.ArrayList;import java.util.Collection;/** * 关于java.util.Collection接口中常用的方法。 * 1、Collection中能存放什么元素? * 没有使用“泛型”之前,Collection中可以存储Object的所有子类型。 * 使用了“泛型”之后,Collection中只能存储某个具体的类型。 * (集合中不能直接存储基本数据类型,也不能存.原创 2021-03-24 16:51:22 · 82 阅读 · 0 评论 -
Java基础知识之集合序列化和反序列化
import java.io.Serializable;/** * 创建一个User类 */public class User implements Serializable { //手动生成序列化版本号 private static final long SerialVersionUID=2L; private int no; // transient关键字表示游离的,不参与序列化。 private transient String name; .原创 2021-03-24 14:04:14 · 438 阅读 · 0 评论 -
Java基础知识之序列化和反序列化
import java.io.Serializable;/** * 编写一个Student类 */public class Student implements Serializable { //IDEA工具可以自动生成序列化版本号 // Java虚拟机看到Serializable接口之后,会自动生成一个序列化版本号。 // 这里没有手动写出来,java虚拟机会默认提供这个序列化版本号。 // 建议将序列化版本号手动的写出来。不建议自动生成 //如果没有将序.原创 2021-03-24 13:36:35 · 203 阅读 · 0 评论 -
Java基础知识之将源目标中的所有文件拷贝到另一个文件当中
import java.io.*;/** * 将F:\学校文档\编程语言中的所有文件复制到D:\a\b\c\test */public class CopyAll { public static void main(String[] args) { // 拷贝源 File srcFile=new File("F:\\学校文档\\编程语言"); // 拷贝目标 File destFile=new File("D:\\a\\b\.原创 2021-03-24 12:27:19 · 350 阅读 · 0 评论 -
Java基础知识之File
import java.io.File;import java.io.IOException;/*File 1、File类不能完成文件的读和写。 2、File对象代表什么? 文件和目录路径名的抽象表示形式。 C:\Drivers 这是一个File对象 C:\Drivers\Lan\Realtek\Readme.txt 也是File对象。 一个File对象有可能对应的是目录,也可能是文件。 File只是一.原创 2021-03-23 21:20:53 · 200 阅读 · 0 评论 -
Java通过PrintStream编写一个记录日志的方法
import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.PrintStream;import java.text.SimpleDateFormat;import java.util.Date;/** * 编写一个记录日志的方法 */public class Logger { public static void log(String msg){ try .原创 2021-03-23 21:20:01 · 122 阅读 · 0 评论 -
Java基础知识之PrintStream
import java.io.PrintStream;public class PrintStreamTest { public static void main(String[] args) { //向控制台输入数据 PrintStream ps=System.out; ps.println("输出数据"); }}import java.io.FileNotFoundException;import java.io.FileO.原创 2021-03-23 21:19:13 · 173 阅读 · 0 评论 -
Java基础知识之DataInputStream/DataOutputStream
DataOutputStream的代码块:import java.io.DataOutputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;/*java.io.DataOutputStream:数据专属的流。这个流可以将数据连同数据的类型一并写入文件。注意:这个文件不是普通文本文档。(这个文件使用记事本打不开。) */publi原创 2021-03-23 21:18:39 · 1632 阅读 · 0 评论 -
Java基础知识之BufferedWriter/OutputStreamWriter
import java.io.*;public class BufferedWriterTest { public static void main(String[] args) { BufferedWriter bw=null; try { bw=new BufferedWriter(new OutputStreamWriter(new FileOutputStream("chapter23/src/tempfile1",true)).原创 2021-03-23 21:17:48 · 458 阅读 · 0 评论 -
Java基础知识之BufferedReader和InputSreamReader转换流
BufferedReader: 带有缓冲区的字符输入流。 使用这个流的时候不需要自定义char数组,或者说不需要自定义byte数组。自带缓冲。 当一个流的构造方法中需要一个流的时候,这个被传进来的流叫做:节点流。 外部负责包装的这个流,叫做:包装流,还有一个名字叫做:处理流。 像如下程序来说:FileReader就是一个节点流。BufferedReader就是包装流/处理流。import java.io.BufferedReader;import java.i...原创 2021-03-22 18:21:32 · 1878 阅读 · 0 评论 -
Java基础知识之使用FileReader +FileWriter进行拷贝
将Copy02.java中的数据通过FileReader和FileWriter方法导入Copy03.java当中代码如下:import java.io.FileNotFoundException;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;/*使用FileReader FileWriter进行拷贝的话,只能拷贝“普通文本”文件。*/public class Copy02 {.原创 2021-03-22 17:44:48 · 161 阅读 · 0 评论 -
Java基础知识之FileWriter
import java.io.FileWriter;import java.io.IOException;/*FileWriter: 文件字符输出流。写。 只能输出普通文本。*/public class FileWriterTest { public static void main(String[] args) { FileWriter out = null; try { // 创建文件字符输出流对象 ...原创 2021-03-22 17:26:49 · 292 阅读 · 0 评论 -
Java基础知识之FileReader
用FileReader方法从templefile文件中读取数据代码:import java.io.FileNotFoundException;import java.io.FileReader;import java.io.IOException;/*FileReader: 文件字符输入流,只能读取普通文本。 读取文本内容时,比较方便,快捷。*/public class FileReaderTest { public static void main(String...原创 2021-03-22 17:15:08 · 624 阅读 · 0 评论 -
使用FileInputStream + FileOutputStream完成文件的拷贝
拷贝案例:import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;/*使用FileInputStream + FileOutputStream完成文件的拷贝。拷贝的过程应该是一边读,一边写。使用以上的字节流拷贝文件的时候,文件类型随意,万能的。什么样的文件都能拷贝。*/public cl.原创 2021-03-22 17:02:01 · 236 阅读 · 0 评论 -
Java基础知识之FileOutputStream
FileOutputStream将数据导入文件当中:import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;/*** 文件字节输出流,负责写。* 从内存到硬盘。*/public class FileOutputStreamTest01 { public static void main(String[] args) { Fi...原创 2021-03-22 16:30:11 · 423 阅读 · 0 评论 -
Java基础知识之FileInputStream
java.io.FileInputStream: 1、文件字节输入流,万能的,任何类型的文件都可以采用这个流来读。 2、字节的方式,完成输入的操作,完成读的操作(硬盘---> 内存)FileInputStream中常用的方法: int read(byte[] bytes):读取一个bytes数组长度的字节 int available():返回流当中剩余的没有读到的字节数量 long skip(long n):跳过几个字节不读。FileInput...原创 2021-03-22 16:13:49 · 336 阅读 · 0 评论 -
Java基础知识之异常Exception
1、什么是异常,java提供异常处理机制有什么用? 以下程序执行过程中发生了不正常的情况,而这种不正常的情况叫做:异常 java语言是很完善的语言,提供了异常的处理方式,以下程序执行过程中出现了不正常情况, java把该异常信息打印输出到控制台,供程序员参考。程序员看到异常信息之后,可以对 程序进行修改,让程序更加的健壮。 什么是异常:程序执行过程中的不正常情况。 异常的作用:增强程序的健壮性。2、以下程序执行控制台出现了: Exception ...原创 2021-03-22 15:01:20 · 605 阅读 · 0 评论 -
Java基础知识之枚举类型
1、枚举是一种引用数据类型2、枚举类型怎么定义,语法是? enum 枚举类型名{ 枚举值1,枚举值2 }3、结果只有两种情况的,建议使用布尔类型。 结果超过两种并且还是可以一枚一枚列举出来的,建议使用枚举类型。 例如:颜色、四季、星期等都可以使用枚举类型。*/public class EnumTest02 { public static void main(String[] args) { ...原创 2021-03-22 11:11:41 · 194 阅读 · 0 评论 -
Java基础知识之BigDecimal
BigDecimal 属于大数据,精度极高。不属于基本数据类型,属于java对象(引用数据类型)这是SUN提供的一个类。专门用在财务软件当中。关于数字的格式化。(了解) import java.text.DecimalFormat; // java.text.DecimalFormat专门负责数字格式化的。 //DecimalFormat df = new DecimalFormat("数字格式"); /* 数字格式...原创 2021-03-22 10:59:27 · 827 阅读 · 0 评论 -
Java基础知识之Date
知识点1:怎么获取系统当前时间知识点2:String ---> Date知识点3:Date ---> String// 获取系统当前时间(精确到毫秒的系统当前时间) // 直接调用无参数构造方法就行。 Date nowTime = new Date(); // java.util.Date类的toString()方法已经被重写了。 // 输出的应该不是一个对象的内存地址,应该是一个日期字符串。 //...原创 2021-03-21 22:01:10 · 555 阅读 · 0 评论 -
Java基础知识之Integer包装类型
1、java中为8种基本数据类型又对应准备了8种包装类型。8种包装类属于引用数据类型,父类是Object。2、为什么要再提供8种包装类呢? 因为8种基本数据类型不够用。 所以SUN又提供对应的8种包装类型。3、8种基本数据类型对应的包装类型名是什么? 基本数据类型 包装类型 ------------------------------------- byte java....原创 2021-03-21 21:12:52 · 571 阅读 · 0 评论 -
Java基础知识之StringBuffer/StringBuilder
* 如果以后需要进行大量字符串的拼接操作,建议使用JDK中自带的:* java.lang.StringBuffer* java.lang.StringBuilderStringBuffer和StringBuilder的区别? StringBuffer中的方法都有:synchronized关键字修饰。表示StringBuffer在多线程环境下运行是安全的。 StringBuilder中的方法都没有:synchronized关键字修饰,表示StringBuild...原创 2021-03-21 20:07:11 · 101 阅读 · 0 评论 -
Java基础知识之字符串
关于Java JDK中内置的一个类:java.lang.String 1、String表示字符串类型,属于引用数据类型,不属于基本数据类型。 2、在java中随便使用双引号括起来的都是String对象。例如:"abc","def","hello world!",这是3个String对象。 3、java中规定,双引号括起来的字符串,是不可变的,也就是说"abc"自出生到最终死亡,不可变,不能变成"abcd",也不能变成"ab" 4、在JDK当中双引号括起来的字符串,例如:"ab...原创 2021-03-21 19:33:42 · 238 阅读 · 0 评论 -
Java基础知识之数组
1.数组工具类类包:java.util.Arrays; 排序方法:Arrays.sort(数组名称); 支持多种数据类型的数组 二分法查找:Arrays.binarySearch(数组名称,需要查找的值) 其中数组必须要先排序,如果找到返回值所在数组下标,否则返回-(low+1) 例如:int[] arrs={23,3543,543,53}; 如查找235 则会返回-3 具体代码参见ArraysTe...原创 2021-03-21 16:51:37 · 254 阅读 · 0 评论 -
Java基础知识之数组
day23课堂笔记1、数组 1.1、数组的优点和缺点,并且要理解为什么。 第一:空间存储上,内存地址是连续的。 第二:每个元素占用的空间大小相同。 第三:知道首元素的内存地址。 第四:通过下标可以计算出偏移量。 通过一个数学表达式,就可以快速计算出某个下标位置上元素的内存地址, 直接通过内存地址定位,效率非常高。 优点:检索效率高。 缺点:随机增删效率较低,数组无法存...原创 2021-03-20 21:14:08 · 104 阅读 · 0 评论 -
Java面向对象之Final关键字
1、final关键字 1.1、final修饰的类无法继承。 1.2、final修饰的方法无法覆盖。 1.3、final修饰的变量只能赋一次值。 1.4、final修饰的引用一旦指向某个对象,则不能再重新指向其它对象,但该引用 指向的对象内部的数据是可以修改的。 1.5、final修饰的实例变量必须手动初始化,不能采用系统默认值。 1.6、final修饰的实例变量一般和static联合使用,称为常量。 public static ...原创 2021-03-20 20:42:12 · 65 阅读 · 0 评论 -
Java面向对象总结
Java面向对象总结类的定义1.* 面向对象的三大特征 - 封装 - 继承 - 多态2 采用面向对象的方式开发一个软件,生命周期当中:【整个生命周期中贯穿使用OO面向对象方式】 * 面向对象的分析:OOA * 面向对象的设计:OOD * 面向对象的编程:OOP3. * 类--【实例化】->对象 * 对象--【抽象】-->...原创 2021-03-11 14:54:31 · 178 阅读 · 0 评论