![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JavaSE
文章平均质量分 55
阿濠Kroy
这个作者很懒,什么都没留下…
展开
-
17.反射
反射是框架设计的灵魂框架:半成品软件。可以在框架的基础上进行软件开发,简化编码反射:将类的各个组成部分封装为其他对象好处:可以在程序运行过程中,操作对象可以解耦,提高程序的可扩展性获取Class对象的三种方式Class.forName(“全类名”) : 将字节码文件加载进内存,返回Class对象多用于配置文件 将类名定义在配置文件中,读取文件 加载类类名.class :通过类名的属性 class 获取多用于参数的传递对象.getClass() : getClass原创 2021-08-24 17:31:56 · 58 阅读 · 0 评论 -
16.Stream流
Stream与传统写法的区别传统方式对集合过滤public static void main(String[] args) { List<String> list = new ArrayList<>(); list.add("张无忌"); list.add("张三丰"); list.add("张良"); list.add("赵敏"); list.add("周芷若");原创 2021-08-24 10:13:01 · 61 阅读 · 0 评论 -
16.缓冲流与转换流
缓冲流是对基础流的增强,会多一个缓冲区数组进行读取或者写入字节缓冲输出流BufferedOutputStream public static void main(String[] args) throws IOException { FileOutputStream fos = new FileOutputStream("fw.txt"); //创建一个缓冲区对象 把FileOutputStream对象放进去 BufferedOutputStream原创 2021-08-23 16:34:10 · 75 阅读 · 0 评论 -
15.IO流
概念1个字符 = 2个字节 1个字节=8个二进制输入:把硬盘的数据,读取到内存中输出:把内存的数据,写入到硬盘中字节流一切文件数据 都是以字节存储字节输出流OutputStreampublic void close() :关闭此输出流并释放与此流相关联的任何系统资源。public void flush() :刷新此输出流并强制任何缓冲的输出字节被写出。public void write(byte[] b):将 b.length字节从指定的字节数组写入此输出流。public void原创 2021-08-22 18:33:36 · 50 阅读 · 0 评论 -
14.File类
File类java.io.File类文件和目录路径名的抽象类File类的方法:创建一个文件/文件夹删除文件/文件夹获取文件/文件夹判断文件/文件夹是否存在对文件进行遍历获取文件的大小关键词:file 、 directory、path路径:绝对路径:是一个完整的路径相对路径:是一个简化的路径File的构造方法File(String pathname): 通过给定的路径字符串转为抽象路径创建一个File实例常用方法获取功能方法:public String getA原创 2021-08-21 16:45:54 · 59 阅读 · 0 评论 -
13.Java多线程
概念并发与并行并发:指两个或多个事件在同一时间段内发生并行:指两个或多个事件在同一时刻发生(同时发生)线程与进程进程:是指一个内存中运行的应用程序线程:线程是进程中的一个执行单元,一个进程至少有一个线程创建线程类主线程:执行主(main)方法的线程单线程程序:java程序只有一个线程执行从main方法开始 从上到下依次执行Thread步骤:创建Thread类的子类在子类中重写run()方法 设置线程任务创建子类对象调用Thread类中的start()方法,开启新线程,执行r原创 2021-08-20 17:16:54 · 57 阅读 · 0 评论 -
12.异常
异常(Exception)概念指的是程序在运行中,出现非正常情况有时候我们编写完程序在运行过程中会出现一些错误,程序编译通过不代表运行时不会出错;如:public class ExecptionTest01 { public static void main(String[] args) { System.out.println(1/0); }}用0做了除数,会抛出 java.lang.ArithmeticException 的异常。你可以通过这个异常能够快原创 2021-08-19 18:08:57 · 70 阅读 · 0 评论 -
11.Map
概述Map<K,V> 是一个双列集合K:键V:值键唯一 ,值可以重复key和Value是一一对应的常用实现类HashMap<K,V>特点:底层是哈希表,查询速度特别快(jdk1.8之前数组+单向链表)(jdk1.8之后数组+单向链表/红黑树)链表长度超过8就转红黑树HashMap是一个无序的集合LinkedHashMap特点:底层是哈希表+链表有序的集合HashMap 常用方法public V put(K key, V value)原创 2021-08-19 17:27:35 · 111 阅读 · 0 评论 -
10.Set接口
概述特点 :没有索引,没有带有索引的方法,也不能使用普通for不允许存储重复的元素HashSet实现类特点:不允许存储重复的对象没有索引,没有带有索引的方法,也不能使用普通for是一个无序的集合,存储和取出顺序可能不一致底层是一个哈希表结构(查询速度非常快)public static void main(String[] args) { Set<Integer> set = new HashSet<>(); set.ad原创 2021-08-19 11:25:10 · 56 阅读 · 0 评论 -
09.List接口
概述java.util.List接口 extends Collection接口特点 :有序有索引允许重复public void add(int index, E element): 将指定的元素,添加到该集合中的指定位置上。public E get(int index):返回集合中指定位置的元素。public E remove(int index): 移除列表中指定位置的元素, 返回的是被移除的元素。public E set(int index, E element):用指定元素替换集原创 2021-08-19 11:24:39 · 42 阅读 · 0 评论 -
08.泛型
概述泛型:是一种未知的数据类型,一种变量,用来接收数据类型E e : element元素T t : Type类型创建集合对象时候,就会确定泛型的类型了使用与不使用泛型的区别不使用泛型:好处:集合不使用泛型,能够存储任意类型的对象弊端:不安全,容易异常使用泛型:好处:避免类型转换的麻烦,存储什么类型,取出就是什么类型把运行期异常 提升到编译期public static void main(String[] args) { ArrayList<String&g原创 2021-08-18 17:20:54 · 45 阅读 · 0 评论 -
07.Iterator迭代器
Iterator接口元素的通用获取方式对集合进行遍历常用方法boolean hasNext() 是否有下一个元素E next()返回下一个元素Iterator迭代器是一个接口,需要使用Iterator接口的实现类对象Collection接口中有个iterator()的方法,方法返回就是迭代器的实现类对象步骤使用集合中的iterator()的方法获取迭代器实现类对象,使用Iterator来接收使用Iterator接口的hasNext()方法判断是否有下一个元素使用Iterator接口的原创 2021-08-18 17:20:23 · 47 阅读 · 0 评论 -
06.Collection
概述集合是java提供一种容器,可以存储多个数据集合和数组的区别:数组长度是固定的,集合的长度可变的数组只能存储同一种类型的元素,可以存储基本类型数据集合可以存储不同类型的对象,但只存储对象集合框架Collection下有List 和 Set 两个接口List有三个实现类:Vector 、 ArrayList、LinkedList特点:有序、可重复、有索引Set有三个实现类:TreeSet、HashSet、LinkedHashSet特点:不可重复、无索引Conllection常用原创 2021-08-18 17:19:51 · 65 阅读 · 0 评论 -
05.包装类
概述基本数据类型的数据没有方法可操作,使用类来包装这些数据在包装类中可以定义一些方法来操作基本数据类型的数据基本数据类型:四类八种基本类型对应的包装类(java.lang包里)byteByteshortShortintIntegerlongLongfloatFloatdoubleDoublecharCharacterbooleanBoolean装箱与拆箱装箱:把基本类型转换为对应的包装类对象拆箱:从包装类对象转原创 2021-08-18 14:21:49 · 44 阅读 · 0 评论 -
04.StringBuilder类
String和StringBuilder区别String类字符串是常量,创建值后不能改变底层是一个被fianl修饰的数组,不能改变private fianl byte[] value;StringBuilder类字符串缓冲区,可以提高字符串操作效率底层也是一个数组,但没有被fianl修饰,可以改变长度超出容量,自动扩容byte[] value = new byte[16]构造方法:public StringBuilder():构造一个空的StringBuilder容器publ原创 2021-08-18 14:20:44 · 53 阅读 · 0 评论 -
03.Calendar日历类
Calendar日历类属于一个抽象类,无法直接创建对象需要里面静态方法getInstance(),该方法返回Calendar的子类对象获取方式public class CalendarInit { public static void main(String[] args) { Calendar cal = Calendar.getInstance(); } }常用方法public int get(int field):返回指定日历字段的值publ原创 2021-08-18 14:19:19 · 60 阅读 · 0 评论 -
02.Date日期时间类
1.Date日期时间类java.util.Date类表示特定的瞬间,精准到毫秒1000毫秒=1秒时间原点:1970年1月1日 00:00:00中国属于东八区,会把时间增加8个小时1970年1月1日 08:00:00毫秒转日期: 1天 = 24 * 60 * 60 = 86400秒构造方法Date的空参数构造方法:Date() 获取当前系统的日期和时间Date的带参构造方法:Date(Long date):传递毫秒值,把毫秒转换为Date日期成员方法Long getTime() 将日期原创 2021-08-17 21:20:49 · 186 阅读 · 0 评论 -
01.Object类的toString和equals方法
Object类1.1 java.lang.Object类特点Object是类层次结构的根(最顶层)类Object是所有类的父类,所有对象(包括数组)都实现这个类如果一个类没有继承父类,默认继承的父类是Object1.2 toString方法String toString() : 返回该对象的字符串表示直接打印类的名字,其实就是调用对象的toString()方法一个类直接调用Object的toString()方法,会打印出地址值,但意义不大需要重写Object的toString()方法原创 2021-08-17 21:19:08 · 55 阅读 · 0 评论