自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 七、打印流 PrintStream

目录1. 打印流概述2. 打印流的使用3.打印流改变输出语句目的地4.使用打印流记录日志文件1. 打印流概述PrintStream 为其他输出流添加了功能,使它们能够方便地打印各种数据值表示形式。打印流具有如下特点:只负责数据的输出,不负责数据的读取 永远不会抛出IOException 有特有的输出方法:print( )、println( ) 所...

2020-02-22 16:43:43 274

原创 六、Properties 集合的使用

目录1. Properties集合简介2.使用 Properties集合加载 .properties文件3.用 Properties集合加载 .xml文件1. Properties集合简介流的使用,为我们提供了诸多把数据永久保存的方法,但问题也随之出现。这些被写入的数据没有相对固定的规格,程序端若想要获取其中的有用数据,就必须知道这些数据的组合规则,再根据...

2020-02-21 00:45:13 770

原创 五、对象序列化与反序列化

1. 对象的序列化与反序列化简介(1)什么是对象序列化与反序列化?对象序列化是指将对象状态转换为字节流的过程,可以将其保存到磁盘文件中或通过网络发送到任何其他程序;从字节流创建对象的相反的过程称为对象反序列化。序列化的字节流是与平台无关的,在一个平台上序列化的对象可以在不同的平台上反序列化。(2)对象序列化与反序列化的作用序列化的作用:在传递和保存对象时保证对象的完整性和可传...

2020-02-20 21:04:56 562

原创 四、Java中常用的 IO 流(下)

目录案例分析:3. 缓冲字节流:BufferedInputStream与BufferedOutputStream4. 缓冲字符流:BufferedReader 与BufferedWriter案例分析: 使用字节流复制一张图片,分别通过: 1.每次读写一个字节 2.使用缓冲数组一次读写多个字节两种方式来实现图片的复制,并比较它们的执行时间。...

2020-02-18 22:39:55 231

原创 三、Java中常用的 IO 流(上)

1.字节流概述字节流主要用于操作 byte 类型的数据,流中最小的数据单元为字节,一般不涉及编码格式的非文本文件都应该使用字节流来处理。字节流本身是没有缓冲区的,因此可以实现边读边写。例如一段视频文件,如果播放器要等到把所有数据全都读进来再播放,就会严重的影响用户体验;若使用字节流,就可以实现边读边写,在为用户播放已经读到的内容的同时不断地从数据源读取文件,这样用户就无须为了看视频等待过长的时...

2020-02-18 15:49:56 294

原创 二、Java中的 IO 流概述

1.什么是 IO 流流是个抽象的概念,是对输入输出设备的抽象。Java 程序中,对于数据的输入/输出操作都是以“流”的方式进行,设备可以是文件、网络、内存等。流具有方向性,至于是输入流还是输出流则是一个相对的概念,一般以程序为参考,如果数据的流向是程序至设备,则称为输出流,反之称为输入流。可以将流想象成一个“水流管道”,每次需要读写数据时,都会在设备与程序之间建立一条用来传输数据的管道,数据就...

2020-02-16 21:09:45 165

原创 一、Java中的 File 类

目录1.File 类的概述2.File类的静态属性与构造方法3.File类常用方法4.递归遍历文件夹1.File 类的概述存储在变量、数组和对象中的数据是暂时的,当程序终止时他们就会丢失。为了能够永久的保存程序中创建的数据,需要将他们存储到硬盘或光盘的文件中,这些文件可以移动、传输,亦可以被其他程序使用,Java中为我们提供了一个专门用于操作文件和文件夹的实体类Fi...

2020-02-16 16:14:36 284

原创 四、等待唤醒机制

1.等待唤醒机制的提出前一篇文章主要讲了线程之间互相竞争资源所引发的线程安全问题,但线程之间除了竞争关系以外还有协同合作的关系。假设现在有老板和顾客两个人,老板负责做包子,顾客负责吃包子。顾客必须要等到包子做好才能吃,而老板为避免剩包子必须等吃完吃完包子再做。在这种情况下,两个线程必须通过等待唤醒机制,来控制彼此的行为。下面通过两者的行为图来进行分析:① 老板刚开始并没有被顾客唤醒...

2020-02-13 21:14:43 237

原创 三、Java线程安全

1.线程安全问题  通常情况下,一个进程中的比较耗时的操作(如长循环、文件上传下载、网络资源获取等),往往会采用多线程来解决。比如现实生活中,银行取钱问题、火车票多个售票窗口的问题,都需要多线程并发执行实现。当进程中有多个线程同时访问临界资源,也就是同时进入临界区时,很有可能引发线程安全问题,造成数据异常。正常逻辑下,同一张火车票只能售出一次,却由于线程安全问题而被多次售出,从而引起系统业务异...

2020-02-13 13:01:16 258

原创 二、Java多线程的实现

1.创建一个多线程程序在没有接触线程之前,我们的程序都是通过 main ( ) 方法,也就是主方法来运行。主方法其实就是一个线程,被称为主线程,写在主方法里的代码都会从上往下依执行。如果现在有两个方法:方法 A 与方法 B,我们想让这两个方法同时运行,也就是并发执行,又该如何用代码来实现呢?Java 为我们提供了一个专门的多线程类 Thread,通过这个类我们就能实现多个线程同时执行。 ...

2020-02-11 21:05:11 318

原创 一、并发相关基础概念

1.并行与并发并发性和并行性是既相似又有区别的两个概念。并行是指两个或多个事件在同一时刻发生;而并发是指两个或多个事件在同一时间间隔内发生。举个形象的例子:把计算机看做一个加工食品的工厂,CPU是工厂中的机器,不同的事件当做不同的加工原料。并行就是有多个机器在同一时刻同时加工不同的原料,因此并行是需要硬件条件支持的。而并发是在只有一台机器的情况下,按照一定的加工次序,比如甲原料加工1分钟...

2020-02-10 20:15:58 441

原创 六、List 与 Set 集合及其实现类

目录1.List 集合2.Set 集合1.List 集合List 继承了 Collection 接口,是一个有序、可重复的集合,集合中每个元素都有其对应的顺序索引。List 集合允许使用重复元素,可以通过索引来访问指定位置的集合元素,可以精确的将元素插入指定位置。(1) List 集合中常用的一些方法:void add(intindex, Eelement) ...

2020-02-10 16:04:39 500

原创 三、Java集合相关的数据结构(下)

目录5.哈希表6.红黑树5.哈希表如下图所示,这就是一个哈希表的结构。哈希表基于数组来进行存储,但它是通过哈希函数直接计算得到元素的具体位置,与数组的顺序存储有本质的区别。查找一个指定值的元素时,顺序存储必须从头开始遍历直到找到为止,而哈希表则只需要计算一次地址就能获取到该元素。因此,哈希表的查找速度非常的快,查找效率远胜于其他的数据结构。常用的计算地址的哈希函数有:直接定...

2020-02-09 17:44:00 143

原创 五、Collection 接口 与 Iterator 接口

目录1.Collecion 接口2.Itertor 迭代器接口3.增强for循环1.Collecion 接口Collection 接口是 List、Set 和 Queue 接口的父接口,通常情况下不被直接使用。Collection 接口定义了一些通用的方法,通过这些方法可以实现对集合的基本操作。定义的方法既可用于操作 Set 集合,也可用于操作 List 和 Queue 集合。...

2020-02-09 12:33:45 302

原创 四、Java集合框架概述

目录1.集合简介2.Java的集合框架关系图1.集合简介在涉及到一组相同类型的数据存储时,我们总是会想到用数组来存储,但数组的长度是预先设定好的,固定不变的。当要存储的数据量总是要不断变化时,数组就产生了很大的缺陷,这是我们就必须找一个能够允许数据量随意变化的容器来存储这些数据,集合便因此诞生。Java 所有的集合类都位于 java.util 包下,提供了一个表示和操作对象集合...

2020-02-06 23:02:43 235

原创 二、Java集合相关的数据结构(中)

目录3.栈4.队列3.栈(1)定义栈是一种只能在一端进行插入或删除操作的线性表,因此根据存储结构的不同分为顺序栈和链栈。其中允许进行插入或删除操作的一端称为栈顶(top),栈顶由一个称为栈顶指针的位置指示器来指示,它是动态变化的。表的另一端称为栈底,栈底是固定不变的。栈的插入和删除操作一般称为入栈(push)和出栈(pop)。栈最主要的特点就是先进先出。(2)声明...

2020-02-06 17:36:03 124

原创 一、Java集合相关的数据结构(上)

目录数据结构概述1.顺序表2.单链表数据结构概述数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。数据结构包括三方面的内容:逻辑结构、存储结构和对数据的操作。其中逻辑结构是对数据之间关系的描述,而存储结构是数据的逻辑结构在计算机中具体位置的映像。按照逻辑结构的不同,数据可划分为线性结构和非线性结构;按照存储方式的不同,数据又被划分为顺序存储、链式存储、索...

2020-02-05 23:28:58 191

原创 十、Java注解

目录1.什么是注解2.注解的作用3.注解的使用4.解析注解——模拟工厂模式1.什么是注解从 JDK 1.5开始在源代码中嵌入一些补充信息,这种补充信息称为注解(Annotation),是 Java 中非常重要的一部分。注解都是 @ 符号开头的,例如我们在学习方法重写时使用过的 @Override 注解。 @Override public String ...

2020-02-04 20:56:22 263

原创 五、IDEA的安装与使用

在市面上java的集成开发工具有很多,比较常见的为IntelliJ IDEA 和 Eclipse 。就个人而言,虽然IDEA需要占用更大的内存且收费,但它的功能更为强大且使用起来更为方便,另外IDEA的界面风格有很不错,因此选择以IDEA作为开发工具。另外,Eclipse作为历时已久的java开发工具也有他独特的优势。下面介绍IDEA的下载安装以及一些常用的配置:1.IDEA的下载与安装...

2020-02-04 17:19:43 318

原创 九、Java的反射机制(下)

目录5. 获取 Class 的逻辑属性对象6.Java反射机制的简单应用7.Java反射机制的优点与缺点5. 获取 Class 的逻辑属性对象在获取了 Class 对象之后,若要具体对其中的成员属性、成员方法以及构造器进行操作,就需要先获取它们对应的封装对象。这三个对象对应的类均在 java.lang 的子包 reflect 包中,并且继承了同在子包中的 AccessibleO...

2020-02-02 17:35:59 456

原创 八、Java的反射机制(上)

目录1. 反射的定义2. 为什么要使用反射3. Java代码在计算机中经历的阶段4.Class 类的使用1. 反射的定义Java 反射机制是在程序运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性;这种动态获取信息以及动态调用对象方法的功能称为 Java 语言的反射机制。简单来说,Java 反射机制就是把...

2020-02-02 16:29:41 269

原创 七、Java中的异常处理

目录1.什么是异常2. Java 的异常类继承关系及分类3.异常的产生过程4.异常的处理5.关于 printStackTrace ( ) 方法1.什么是异常在日常编写程序的过程中,由于疏忽或者逻辑错误时常会导致程序运行时出现这样或那样的错误导致程序非正常终止。其实这就是程序发生了异常,我们举几个常见的例子:(1)数组越界异常 public static ...

2020-02-01 15:09:31 204

原创 六、Java中的枚举类

目录1.枚举类的定义2.枚举类的使用3.枚举类的作用与优点1.枚举类的定义在编程开发中,我们经常遇到诸如此类的问题——一组颜色有红、橙、黄、绿、青、蓝、紫,而且这些颜色都是常量固定不变,因此我们需要专门来定义一个类用来存放这些常量以便于使用。/** * 一个专门用来容纳颜色的类 */public class Color { //创建颜色,这些颜色可...

2020-01-29 18:33:41 330

原创 五、Java中的泛型

目录1.泛型的定义2.泛型的使用3.泛型通配符的使用4.泛型的作用1.泛型的定义在引出泛型之前,我们首先来看这样一个案例:我们知道,Object 类是所有类的基类,因此我们如果创建一个 Object 类型的数组,那么我们就可以往里面添加任意类型的元素。我们以包装类为例,分别添加不同的包装类,在遍历数组时都按 String 类型对其元素进行使用,那么运行时就会报出异常。...

2020-01-29 18:33:07 168

原创 四、关于包装类的使用

目录1.什么是包装类2.包装类的特点3.8 大基本数据类型对应的包装类4.包装类的继承关系5.数值型包装类的使用6.探究 Integer 类的静态内部类:IntegerCache 类1.什么是包装类对于基本数据类型int 、double 、float 等,虽然使用起来非常的方便,但由于它们不是对象,因此无法通过向上转型获取到 Object类提供的方法,而像S...

2020-01-26 19:18:42 327

原创 二、Java中常用的API

目录1. Object 类中的 equals() 方法和 toString() 方法2. Objects 类的 equals() 方法3.Scanner类关于从控制台输入部分4.Random类(伪随机数类)的使用5.关于时间的 Date 类和 Calendar 类以及相关的文本格式化工具类6. System 类中的 currentTimeMillis() 和 arrayco...

2020-01-16 22:59:26 164

原创 三、关于字符串的处理

目录1.字符串处理的工具类2.三者的继承关系3.String 类的使用4.StringBuilder 类的使用1.字符串处理的工具类对于在 Java 编程中有着重要作用的引用数据类型——字符串,Java 提供了用于处理字符串的三个类,分别是 String 、StringBuilder 与 StringBuffer 。其中String 类负责对字符串的创建与操作,但由于...

2020-01-16 17:12:10 137

原创 一、API的介绍和使用方法

目录1.什么是API2.API的使用步骤1.什么是API在编写程序的时候,通常有很多功能是通用的,或者是很基础的,可以用这些功能来组成更发杂的功能代码。比如文件操作,不同程序对文件的操作基本都是一样的,打开文件,关闭文件,读取文件里面的数据,往文件中写数据等等。所不同的仅仅是文件路径不相同,文件内容不同。如果把文件相关的操作编写成一个通用的类,不管哪个程序员都可以直接使用,而不必自...

2020-01-16 12:54:22 1288

原创 八、Java内部类的使用

目录1.内部类的引出与定义2.使用内部类的好处3.内部类的使用1.内部类的引出与定义如图所示,如果把我们的身体看作一个整体的话,那么它除了自己的属性(身高、体重)外,还包含很多的器官。而这些器官又可以分别单独的看做一个整体并且拥有各自的属性,但是却不能离开身体独立存在。如果把身体看做是一个类的话,那么这些器官便是这个类的内部类。由此,我们便可得出内部类的定义:内部类就是...

2020-01-12 12:15:32 335

原创 七、Java面向对象三大特征之一——多态

目录1.多态的定义2.多态存在的三个条件3.多态的使用格式:左父右子4.多态中成员的访问特点5.对象的向下转型与 instanceof 关键字6.使用多态的好处1.多态的定义(1)对于继承关系,多态是同一个行为具有多个不同表现形式或形态的能力。即同一个父类方法在不同子类中具有不同的表现形式。(2)对于接口实现,多态就是同一个接口,使用不同的实例而执行不同操作。...

2020-01-11 19:02:47 472

原创 六、Java面向对象三大特征之一——继承(下)

目录7.java继承的三个特点8.抽象类与抽象方法9.java中的接口(interface)10.继承父类并实现多个接口时的注意事项11.接口之间的多继承 —— 接口可以多继承7.java继承的三个特点(1)java只支持单继承,即一个类的直接父类只能有一个。(2)java支持多级继承,即子类也可以被当做父类被其他类继承。java中最高层次的父类是java.lang....

2020-01-09 00:41:12 166

原创 五、Java面向对象三大特征之一——继承(上)

目录1.定义2.继承的格式3.继承的访问特点示意图4.继承的注意事项5.super、this关键字的用法6.继承中方法的覆盖重写1.定义一个类在现有类的基础上,对父类进行扩充,也就是子类继承父类的特征和行为,一个类只有一个直接父类,如果没有声明父类,则默认的父类为Object类。继承主要解决的问题就是共性抽取,如在一个坦克大战的游戏中,坦克有很多种(敌方坦克1,...

2020-01-06 00:06:19 182

原创 四、Java面向对象三大特征之一——封装

目录1.定义2.优点3.封装在java中的体现4.private关键字的使用5.java中的访问控制修饰符6.this关键字的使用7.构造方法:专门用来创建对象的方法8.一个类的标准结构(java bean)9.static关键字10.final关键字的四种用法1.定义封装就是把过程和数据包装起来,对数据的访问只能通过已定义的接口严格控制。使用者不能...

2020-01-04 13:35:00 194

原创 三、Java面向对象简介

目录1.面向过程与面向对象对比2.类与对象3.成员变量与局部变量1.面向过程与面向对象对比(1)面向过程:分析出解决问题所需要的步骤,然后用函数把这些步骤一一实现,使用时依次调用。(2)面向对象:把问题根据一定的规则划分为多个独立对象,然后由多个对象相互配合来实现问题的求解。当应用模块功能发生变动时,只需修改个别对象,使代码更容易维护;并且每个对象之间联系性较小,相对独立,...

2020-01-03 20:18:56 154

原创 二、Java中的数组

目录补充:java内存划分简介——5个部分1.数组的特点2.数组的初始化3.数组操作的内存示意图4.数组的扩充5.数组的应用6.二维数组补充:java内存划分简介——5个部分(1)栈(Stack):存放方法中的局部变量,一旦超出作用域就会从栈中消失。方法一定是在栈中运行的。(2)堆(Heap):凡是被new出来的都在堆中,即栈中只保存变量名以及f变量值在堆中...

2020-01-03 13:35:23 233

原创 一、Java基础语法

目录1.注释和控制台输出语句2.java数据类型3.变量的使用4.基本数据类型之间的转换4.java运算符5.方法定义与调用6.流程控制语句1.注释和控制台输出语句/** * 文档注释 * 会被java Doc文档工具作为文档内容显示 * 一般为类、类的成员变量和成员方法的声明 */public class HelloWorld { //单行...

2020-01-02 18:49:45 329 1

原创 四、JDK的下载与安装

1.JVM、JRE与JDK简介(1)JVM:英文名称(Java Virtual Machine),就是我们耳熟能详的 Java 虚拟机。它只认识 xxx.class 这种类型的文件,它能够将 class 文件中的字节码指令进行识别并调用操作系统向上的 API 完成动作。所以说,JVM 是 Java 能够跨平台的核心。(2)JRE:英文名称(Java Runtime Environ...

2019-12-30 18:45:26 243

原创 三、Java简介

1.什么是java(1)java是由詹姆斯·高斯林博士设计、sun公司推出的跨平台、可移植性高的一种面向对象的编程语言,可用来编写桌面应用程序、Web应用程序、分布式系统、嵌入式系统应用程序等。(2)java是一种通过解释方式来执行的语言,其语法规则和C++类似。同时,java也是一种跨平台的程序设计语言,可以运行在任何平台和设备上。java语言编写的程序既是解释型的,又是编译型的。2...

2019-12-30 17:13:52 309

转载 二、常用的DOS内部命令

1) dir–显示指定路径上所有文件或目录的信息它的格式为”dir [盘符:][路径][文件名] [参数]”,比如”DIR E:\FF.M3U”。2) md(mkdir)–建立目录它的格式为”md [盘符][路径]”,例如”MD TEMP”。3) rd(rmdir)–删除目录格式为”RD [盘符][路径]”。注意:该命令只能删除空目录,并且不能删除当前目录。4) cd–...

2019-12-30 16:07:30 490

原创 一、计算机中的二进制

1.二进制的起源 二进制是由莱布尼兹提出的。组成计算机系统的逻辑电路通常只有两个状态,即开关的接通和断开。断开用“0”表示,接通用“1”表示。因为只有这两种状态,即便系统在收到干扰是仍然可靠分辨出“0”和“1”,所有,再具体的系统实验中,二进制的数据表达具有抗干扰能力强,可靠性高的优点。2.二进制与十进制的转换十进制转换为二进制:使用短除法每次除以2,知道商为0时结束,并...

2019-12-30 15:58:45 1080

空空如也

空空如也

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

TA关注的人

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