自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 收藏
  • 关注

原创 反射的概论

1.反射概述1.1 反射引入1.3 Java反射的作用1.4 Java反射相关的类2.Class类的使用 回忆一下之前如何使用一个Java类? 已知一个类的类名、以及类中的方法、属性、构造方法等 调用构造方法创建对象 使用对象调用方法或属性 问题: 如果仅仅知道一个类的类名,能否动态得到类的定义信息,包括哪些方法,属性等? 答案:可以通过反射做到 1.2 Java反射的概念.

2022-04-24 20:00:10 480

原创 多线程基础(一)概念

1.进程和线程基本概念1.1 进程 运行中的应用程序叫进程,每个进程运行时,进程负责了内存空间的划分。它是系统进行资源分配和调度的一个独立单位。 操作系统都是支持多进程的 Windows是多任务的操作系统,那么Windows是同时运行多个应用程序吗? 1.2 线程1.2.1线程概念和特点 线程是轻重级的进程,是进程中一个负责程序执行的控制单元 线程是由进程创建的(寄生在进程中) 一个进程可以拥有多个线程,至少一个线程 线程有几种.

2022-04-23 20:03:06 417

原创 IO和对象序列化题

本章内容 知识点1:进程和线程基本概念 知识点2:多线程的优缺点 知识点3:主线程 知识点4:创建线程的三种方式 知识点5:线程的状态 知识点6:线程的调度与控制 知识点7:线程同步 知识点8: 线程死锁 知识点9:线程通讯 知识点10:线程的生命周期 知识点11:线程池调度器 知识点12:信号量 知识点13:Lock对象 知识点14:ThreadLocal ...

2022-04-23 18:43:44 581

原创 NIO流基础

1.nio与io的区别 NIO是以块的方式处理数据,但是IO是以最基础的字节流的形式一次一个字节地去写入和读出的。所以在效率上的话,肯定是NIO效率比IO效率会高出很多。 NIO不在是和IO一样用OutputStream和InputStream 输入流的形式来进行处理数据的,但是又是基于这种流的形式,而是采用了通道和缓冲区的形式来进行处理数据的。 NIO的通道是可以双向的,但是IO中的流只能是单向的 2.Channel Channel,国内大多翻译成“通道”。Channe

2022-04-23 17:09:19 330

原创 对象序列化

1.对象序列化的作用1、Java平台允许我们在内存中创建可复用的Java对象,但一般情况下,只有当JVM处于运行时,这些对象才可能存在,即,这些对象的生命周期不会比JVM的生命周期更长。但在现实应用中,就可能要求在JVM停止运行之后能够保存(持久化)指定的对象,并在将来重新读取被保存的对象。Java对象序列化就能够帮助我们实现该功能2、使用Java对象序列化,在保存对象时,会把其状态保存为一组字节,在未来,再将这些字节组装成对象。必须注意地是,对象序列化保存的是对象的"状态",即它的成员变量。由

2022-04-23 15:47:49 5033

原创 随机访问文件流及字节数组流

随机流(RandomAccessFile):此类的实例支持对随机访问文件的读取和写入 位于java.io包 特点 该对象即能读也能写,一个对象就搞定 该对象内部维护了一个大型 byte 数组,光标或索引在该数组任意位置读取或写入任意数据 可以通过getFilePointer方法获得光标的位置和通过seek方法设置光标位置 该对象将字节输入流和输出流进行了封装 该对象源或目的,只能文件,通过下面的构造方法就可以看..

2022-04-23 14:54:27 556

原创 字节字符转换流

转换流:以将一个字节流转换为字符流,也可以将一个字符流转换为字节流 字节字符转换流位于java.io包 1.OutputStreamWriter类OutputStreamWriter:可以将输出的字符流转换为字节流的输出形式字符流转换成字节流图解...

2022-04-23 13:31:02 1361

原创 System的标准输入输出流

1.输入和输出流程序对应的基本输入为键盘输入,基本输出为显示器输出。Java中,System类的in和out两个成员代表了基本输入输出的抽象 System.in: System.in是InputStream, 标准输入流, 默认可以从键盘输入读取字节数据 注意:System.in流是无需关闭的 案例:package system;import java.io.BufferedInputStream;import java.io.IOException

2022-04-23 13:09:02 1059

原创 字节的输入输出流

1.OutputStream类OutputStream它不仅可以写入字节,字符,还可以写入图片等媒体文件

2022-04-23 13:01:43 3844

原创 关于close(),flush()在IO流中的错误

1.说起close(),一开始在我的项目中我并不认为重要,然后去查了一下close()后来明白是我自己的项目太小了...........我们都知道在计算机有垃圾回收机制,而垃圾回收机制的时间点是你不能控制的。而你会有时因为系统内存不足时你需要它立即进行然而它并不运行,另外一种你希望它保留这个进程时它帮你回收了,而close()就能让我们控制它在我需要它关闭的时候关闭,当你在做大项目时,程序跑起来避免内存外泄,资源浪费。利用try catch finally 运用close()2.flush(),

2022-04-17 21:38:22 919

原创 字符的输入输出流

1.Writer抽象类Writer抽象类里的方法由于Writer是抽象类不能创建对象,所以用它子类来完成写入字符的操作1.2FileWriter类FileWriter类是Writer的子类,是文件写入流,以字符流的形式对文件进行写操作,其构造方法有5种重载,以下是常用的4种:案例:...

2022-04-17 21:04:04 754

原创 IO流(概念,作用及体系结构)

1. IO流的概念与作用1.1 IO流是什么I(Input)输入,O(Out)输出1.2 IO流的作用数据在各个设备之间的传输,是通过流的方式完成的1.3 IO流分类根据流动方向的不同,流分为输入流和输出流(相对于内存,输入和输出)根据流的格式不同,流分为字节流和字符流 程序中的输入和输出都是以流的形式保存的,流中保存的实际上全是字节文件。 所有文件的存储都是字节(byte)来存储,在磁盘上保留的并不是文件的字符,而是先把字符编码成字节,再存储这些字节到硬..

2022-04-17 17:58:04 3371 2

原创 文件操作及处理

•掌握Java中对文件/文件夹的各种操作方法•了解输入输出流的概念•掌握Java中输入输出流的分类•掌握Java输入输出类型的继承树即常用输入输出流的功能与基本使用方法•了解nio的特性1.File类型1、什么是文件?文件可以认为是相关记录或存放在一起的数据的集合文件一般是存放在存储设备上的,例如:硬盘、光盘和移动存储设备等等2、java.io包是JDK内置的包,其中包含一系列对文件和目录的属性进行操作,对文件进行读写操作的类;程序中如果要使用到该包中的类,对文件或流

2022-04-17 17:19:35 403

原创 数据结构(Link,Queue,Stack,hash表)

1.基本的三种数据结构类型1、线性表 结点按逻辑关系依次排列形成一个“锁链”2、树 ​ 具有分支、层次特性,其形态有点象自然界中的树3、图 ​ 结点按逻辑关系互相缠绕,任何两个结点都可以邻接2.数组就是一种典型的线性表1、数组其实就是一种典型的线性表,而且是一种物理连续的线性表2、数组的特点: 通过下标(内存偏移量,单位是元素个数)进行元素访问 数组中每个元素的类型必须一致 数组的大小一旦确定就不能变更 3.链表1、链表是一种逻辑上连续的线性表,所谓

2022-04-17 15:24:06 1845

原创 Collections工具类

1.Java中的内部、外部比较器一个类如果想【支持排序】,那么就必须实现接口Comparable,该接口被称为对象的内部比较器Comparable接口有一个方法外部比较器Comparator,灵活为类定义多种比较器,此时类本身不需要实现Comparable接口;Comparator接口中有两个方法:2.Arrays实现对象数组的排序两个常用的对象数组排序方法如下案例:package collection;import java.lang.reflect...

2022-04-17 14:55:16 344

原创 集合-----Map接口

Map是由一系列键值对组成的集合,提供了key到Value的映射。同时它也没有继承 Collection。 Map是一个key对应一个value,所以它不能存在相同的 key 值,当然value值可以相同 Map接口提供了重要的针对键、值进行操作的接口方法 1.1HashMap特点: 1.底层实现1.7之前:数组+链表 1.8以后:数组+链表+红黑树 2.key不允许重复,如果key的值相同,后添加的数据会覆盖之前的数据 3.HashMap是非线..

2022-04-17 14:30:24 804

原创 Collection的子接口(Set接口)

1.1 EnumSetEnumSet:是枚举的专用Set。所有的元素都是枚举类型1.1 HashSet常用方法: boolean add(E e) 将指定的元素添加到此集合(如果尚未存在)。 void clear() 从此集合中删除所有元素。 boolean contains(Object o) 如果此集合包含指定的元素,则返回 true 。 boolean remove(Object o) 如果存在,则从该集合中删除指定的元素。 int size(

2022-04-16 19:23:53 768

原创 Collection的子接口(List接口-Vector类及Queue,子类Stack)

1.1VectorInterface Enumeration<E>是接口1.Vector与ArrayList相似,操作几乎一样,但是Vector是同步的。所以说Vector是使用数组实现的线程安全的列表;2.Vector在进行默认规则扩容时,新数组的长度=原始数组长度*2,也可以指定扩容长度;3.创建对象的时候初始化长度为11.1.2案例:package List;import java.util.Enumeration;import java.u

2022-04-16 15:23:56 462

原创 Collection的子接口(List接口-LinkedList类)

1.1Linkedlist的方法1.2构造方法1.2.1特点(1)有序,可重复(2)底层使用双链表存储,所以查找慢(LinkedList不能随机访问,从开头或结尾遍历列表),添加和删除快(找到指定位置或者找到指定元素后,添加和删除操作快)(3)LinkedList是非线程安全的1.3案例:package List;import java.util.LinkedList;import java.util.List;class LinkListTest { .

2022-04-16 14:46:04 636

原创 Collection的子接口(List接口-ArrayList类)

1.1List所代表的是有序的的Collection1.它用某种特定的插入顺序来维护元素顺序,同时可以根据元素的整数索引(在列表中的位置,和数组相似,从0开始,到元素个数-1)访问元素,并检索列表中的元素2. List由于列表有序并存在索引,因此除了增强for循环进行遍历外,还可以使用普通的for循环进行遍历1.2List的常见实现类1.2.1ArrayList1.2.1.1构造方法1.2.1.2特点:1.底层实现:数组(不限制数量添加元素,底层动态扩缩容数组..

2022-04-16 14:34:50 155

原创 Collection接口组成及Collection的遍历(fori循环,增强for循环,迭代器)

Collection接口是最基本的集合接口。为什么出现集合类?答:面向对象语言对事物的体现都是以对象的形式,所以为了方便对多个对象的操作,就对对象进行存储,集合就是存储对象最常用的一种方式。数组和集合类同是容器,有何不同?1.数组和集合类都是容器。2.数组长度是固定的;集合长度是可变的。3.数组中可以存储基本数据类型和引用数据类型,集合只能存储对象。4.数组中存储数据类型是单一的,集合中可以存储任意类型的对象。集合框架collecttion接口不提供直接的实现,javaS

2022-04-16 14:08:58 1021

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除