必要的
白云天上飘
这个作者很懒,什么都没留下…
展开
-
简单了解抽象类和接口(概念)
概念原创 2019-03-09 21:45:00 · 141 阅读 · 0 评论 -
文件的拷贝以及封装成工具类
本章内容:拷贝:以程序作为中转,把输入流和输出流合二为一 * 工具类:1.封装操作和释放资源步骤,简化代码文件的拷贝 /* 文件的拷贝 1.文件到程序 2.程序到文件 */ public static void fileCopy(String srcPath,String detaPath){ File src = n...原创 2019-03-13 17:09:18 · 398 阅读 · 0 评论 -
字节数组流
字节数组流;这个是由垃圾回收机制GC来释放的。这个可以看做是一个内存,Java * 是可以直接访问内存的,不用关闭,close()是个空方法。 * 任何的东西都可以转成字节数组,方便网络的传输,但不要太大,怕内存溢出。 * 之前的文本字节流是由系统来释放的,因为文件是存在硬盘上的,不能直接访问, * 只能借助系统import java.io.*;字节数组输入流...原创 2019-03-13 17:12:03 · 178 阅读 · 0 评论 -
处理流之缓冲流
处理流:字节缓冲流BufferedInputStream,BufferedOutputStream:为了提高IO流的操作, * 内部提供了一个缓冲区,将数据打包放在缓冲区,这样就不用频繁的读写硬盘了, * 提高了操作的性能:就比如搬货,如果是自己搬就是一件一件的搬,这样很慢,于是叫 * 来了一辆车,把东西放进去,一趟一趟的搬,但是还是比较麻烦,直接叫一辆大卡车, * 把东西...原创 2019-03-13 17:43:04 · 233 阅读 · 0 评论 -
对接流
对接流:文件到字节数组是不能直接传递的,要通过程序。以程序为中转点,实现文件和字节数组之间的传递: * 文件通过程序到字节数组;字节数组通过程序到文件。这个需要用到文本输入流、输出流和字节数组输入流、 * 输出流。 /* 文本读取到字节数组: 1.文本到程序 2.程序到字节数组 */ public static byte[] fileToByt...原创 2019-03-13 17:46:28 · 227 阅读 · 0 评论 -
常量、变量
变量是指一个可操作的储存空间,值可变化,命名要遵循驼峰原则。 * * 常量的值不可变,用final修饰,命名时用大写和下划线。变量有成员变量、静态变量、局部变量:public class Welocme { int oyhAge;// 成员变量,从属于对象,会自动初始化。 static String oyhName;// 静态变量,从属于类,用static修饰 public...原创 2019-03-22 13:47:22 · 89 阅读 · 0 评论 -
线程状态
线程状态:5大状态:新生、就绪、运行、阻塞、死亡 * 新生:线程对象创建就进入新生状态,每个线程有自己的工作内存。 * 就绪:调用了start方法就进入就绪状态,但不代表会被立即调度;阻塞事件解除,进入就绪状态; * 运行时调用yield(礼让线程,暂停,让出CPU的调度,等待调度)方法,进入就绪状态;jvm * 将CPU从本地线程切换到其他线程,进入就绪状态。...原创 2019-03-18 20:59:03 · 90 阅读 · 0 评论 -
运算符
* 算术运算符:二元运算符:+,-,*,/,% 一元运算符:++,-- 赋值运算符:= * 扩展运算符:+=,-=,*=,/=,%= 关系运算符:==,!=,>,<,<=,>= * 逻辑运算符:&(或),|(与),!(非),^(异或);短路:&&,||,优先级:逻辑非>逻辑与>逻辑或 * 位运算符:&,|,^,~...原创 2019-03-22 13:56:57 · 84 阅读 · 0 评论 -
控制语句
控制语句:if: int a = 2; int b = 3; int c = 4; if (a > 0) { System.out.println(a); } else if (a > b) { System.out.println(b); } else { System.out.println(c); }控...原创 2019-03-22 14:29:47 · 86 阅读 · 0 评论 -
构造方法
* 构造方法(构造器) * 1.通过new关键字调用 * 2.构造方法虽然有返回值,但不能定义返回类型,不能用return返回某值,可以只用return; * 3.我们如果没有定义构造器,系统会自己定义一个无参的构造函数,如果自己定义了那么系统不会自动添加 * 4.构造方法名必须与类名一致 * * this的本质、用法 (this不能用于static方法中,this指的是对象,静态...原创 2019-03-22 14:41:59 · 84 阅读 · 0 评论 -
参数传值机制
* 参数传值机制:1.传递的是副件,不是原件,对原件没有影响 * 2.基本数据传的是值的副件,引用数据传的是地址public class Value_PassOn { int id ; String name; public Value_PassOn(int id,String name) { this.id = id; this.nam...原创 2019-03-22 14:44:54 · 114 阅读 · 0 评论 -
内存分析:栈、堆、方法区
/*栈stack:1.栈描述的是方法执行的内存模型,每个方法被调用时都会创建一个栈帧(储存局部变量、操作数、方法出口等) * 2.是私有的,不能线程间共享号 * 3.特性:先进后出,后进先出 * 4.是系统自动分配,速度快,是一个连续的空间 * 堆heap:1.用于存储创建好的对象和数组 * 2.只有一个堆。被所有线程共享 * ...原创 2019-03-22 15:55:14 · 222 阅读 · 0 评论 -
垃圾回收机制(概念)
* 垃圾回收机制(GC) * 自动回收无用对象占用的内存空间,解决内存问题,大大提高工作效率 * 过程:1.发现无用的对象,一般用两种方法:1.引用计数法:检查方法是否被引用,没被引用的就是无用的, * 计算简单,缺点是“循环引用的无用对象”无法识别,两个对象互相引用 * ...原创 2019-03-22 15:57:06 · 421 阅读 · 0 评论 -
Java基础目录
常量、变量运算符控制语句构造方法参数传值机制原创 2019-03-22 16:18:25 · 101 阅读 · 0 评论 -
面向对象目录
抽象类和接口数组扩容、拷贝,二维数组多态和关键字final继承与重写,关键字super内部类封装包装类概念,常用integer,stringBuilder,string方法冒泡排序和二分法(折中法)查找集合(容器),collection,泛型,comparable接口用容器(集合)来存储表格数据时间类,日期(日历)类异常(概念)file类、递归打印文...原创 2019-03-22 16:31:03 · 113 阅读 · 0 评论 -
IO流目录
IO流分类了解(概念)以及文本输入输出流字符集,编码解码文件的拷贝以及封装成工具类字节数组流处理流(概念)以及装饰器模式处理流之缓冲流对接流处理流之数据流处理流之对象流处理流之转换流处理流之打印流文件分割、合并、序列流IO-Commons-fileUtils...原创 2019-03-22 16:50:07 · 167 阅读 · 0 评论 -
字符集,编码解码
本章内容:字符集的作用、分类;编码解码编码:字符到字节是编码 * 解码:字节到字符是解码 * 字符集:Java字符使用16位的双字节存储,但是在实际文件存储的数据有各种字符集, * 需要正确操作,否则有乱码的发生 * US-ASCII:英文的ASCII;ISO-8859-1:拉丁字符,包含中文,日文等 * UTF-8:变长unicode字符(1-3个字节),国际通用 *...原创 2019-03-11 22:18:29 · 165 阅读 · 0 评论 -
IO流分类了解(概念)以及文本输入输出流
本章内容:简单了解IO流的分类;文本字节输入输出流、文本字符输入输出流基本操作io流:流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象。 * 按方向:输入流:运用了解码,将字节转成字符,是将数据源输入到程序里 * 输出流;运用了编码,将字符转成字节,是将程序的内容输出到指定的地方去。 * 按功能:节点流:处于io操作的第一线。所有操作必须通过他们进行;...原创 2019-03-11 22:11:32 · 356 阅读 · 0 评论 -
递归,使用递归遍历目录结构和树状展现
import java.io.File;/** * 递归结构:递归就是自己调用自己,分为两部分: * 1.递归头:什么时候不调用自己,如果没有头,会陷入死循环 * 2.递归体:什么时候需要调用自己 * 递归遍历目录结构和树状展现 */public class TestRecursion { public static void main(String[] ar...原创 2019-03-10 01:12:22 · 310 阅读 · 0 评论 -
数组工具的简单使用,扩容,拷贝,二维数组
本章内容(下面代码都是在一个类里,前后能读通):/** * 数组:Arrays工具的使用,扩容数组,拷贝数组,多维数组主要学习二维数组,学容器后二维数组 * 都用的少。可以使用二维数组来存储表格数据。 */要导的包import java.util.Arrays;数组的声明的声明和赋值,下面两种方式:先声明后赋值,声明并赋值: int[] nums = ...原创 2019-03-09 22:35:08 · 222 阅读 · 0 评论 -
多态和关键字fianl
本章内容(以下代码都在一个类里,上下能读懂):了解多态多态:指的是同一个方法的调用,由于对象不同可能会有不同的行为。 * 要点:1.是指方法的多态,不是属性的多态 * 2.3个必要条件:继承,方法的重写,父类引用指向子类对象 * 3.父类引用指向子类对象后,用该父类引用调用子类重写的方法, * 此时多态就出现了。 * * 对象的转型...原创 2019-03-09 23:06:40 · 213 阅读 · 0 评论 -
继承与重写,关键字super
本章内容(以下代码都在一个类里,上下能读懂)/** * 继承与重写、super * 继承:子类继承父类,类只能单继承,接口可以多继承 * 重写:子类重写父类的方法,类名不同,方法名和形参相同, * 子类返回值小于等于父类,子类访问权限大于等于父类。 * super:可以通过super来访问父类中被子类覆盖的方法和属性 */先定义一个persi...原创 2019-03-09 23:25:27 · 223 阅读 · 0 评论 -
内部类(概念)
本章内容:简单了解内部类(概念):内部类 * 成员内部类:非静态内部类:1.必须寄存在一个外部类里 * 2.非静态内部类可以直接访问外部类的成员,但是外部类不能直接访问 * 非静态内部类成员。 * 3.外部类的静态方法以及代码块...原创 2019-03-09 23:31:26 · 137 阅读 · 0 评论 -
封装(概念)
本章内容(一个类里的代码,上下能读懂):封装的概念以及如何实现 封装:1.提高代码的安全性;2.提高代码的复用性; * 3.高内聚:将复杂的代码封装起来,便于修改,提高维护性 * 低耦合:简化外部使用,便于扩展和协作 * 封装的实现---通过使用访问控制符 * private:私有,同一个类中访问。一般对象的属性都用私有来修饰。 * defaul...原创 2019-03-09 23:35:52 · 375 阅读 · 0 评论 -
包装类概念,常用integer,stringBuilder,string方法
本章内容(一个类里的代码,上下能读懂)为什么有包装类;数据自动拆装箱;缓存问题;string,stringBuilder,的基本方法,数字,字符串与与对象的相互转换:包装类:我们经常使用的基本数据类型不是对象,但在实际应用中经常需要将基本数据转化成对象, * 为了解决这个问题,设计了对应的八个类,这就是包装类。 * byte-Byte boolean-Boolean short-Sh...原创 2019-03-09 23:47:29 · 148 阅读 · 0 评论 -
冒泡排序和二分法(折中法)查找
本章内容(一个类的代码,上下能看懂)冒泡排序的概念和实现与优化,二分法的概念和实现:排序:冒泡排序:数据之间两两比较,大的放后面,直到比较出最大的那个出来,然后继续循环比较。 * 优化:有时会出现已经排序好了,但依然循环的情况,这时就要判断是否还在进行比较, * 如果没有比较说明排序已经好了,可以跳出循环了 * 查找:二分法查找(折半查找):需要数组已经排序好了;将整...原创 2019-03-10 00:05:45 · 746 阅读 · 0 评论 -
集合(容器),collection,泛型,comparable接口
本章内容:已经有数组了为什么有集合;集合的子类特性以及实现;泛型是什么;comparable接口的简单使用泛型:帮助我们建立类型安全的集合。本质是“数据类型的参数化”,可以理解为是形参。 * 需要集合的原因:因为数组不灵活的特性,比如长度要先定好,但是实际上写的时候不知道有多少数据。 * 容器(集合)collection:interface修饰,下面有set和list两个子类,也是in...原创 2019-03-10 00:38:01 · 140 阅读 · 0 评论 -
用容器(集合)来存储表格数据
本章内容:如标题要导的包:import java.util.*;直接看代码:public class testCollectionSaveTableData { public static void main(String[] args) { Map<String,Object> row1 = new HashMap<>(); ...原创 2019-03-10 00:41:15 · 293 阅读 · 0 评论 -
时间类,日期(日历)类
本章内容:时间类。日期类的一些常用方法,时间和字符串之间的转换时间类Date:用long类型来表示时间 * DateFormat:实现时间和字符串之间的转换,不能新建,因为是个抽象类 * 日历(期)类:calender要导的包import java.text.DateFormat;import java.text.ParseException;import java.tex...原创 2019-03-10 00:51:28 · 197 阅读 · 0 评论 -
枚举,简单了解
/** * 枚举类:放置的是一些常量,默认修饰public static final * 1.需要定义一组常量时,使用枚举 * 2.尽量不要使用高级特性,高级特性可以用普通类来实现,没必要引入,枚举,增加程序的复杂性。 */public class TestEnum { public static void main(String[] args) { ...原创 2019-03-10 00:52:34 · 87 阅读 · 0 评论 -
异常(概念)
了解异常的概念,分类,处理方式。纯理论异常:父类:Throwable,下面的子类分为:error 和exception * error:不可控制的,是系统错误,不需要我们管。 * exception:是程序员导致的错误,应由程序员及时处理。分为编译时(检查时)异常和运行时异常 * 编译时异常,编译器会自己检查代码是否错误,处理方式有两种:1,使用try/catch捕获,...原创 2019-03-10 00:56:01 · 230 阅读 · 0 评论 -
file类、递归打印文件名称、获取文件大小
file类是以抽象的方式代表文件名和目录路径名,用于文件和目录的创建,文件查找和文件删除等,所以不可直接对文件里面的内容进行操作,需要学IO流之后才能学到。import java.io.File;import java.io.IOException;import java.util.Date;file类的一些基本方法 File f = new File("F:\\a...原创 2019-03-10 01:00:35 · 459 阅读 · 0 评论 -
迭代器和collections工具类的使用
注意:collections和集合colletion是不一样的,collections是工具类,别搞混了。import java.util.*;collecions工具类的使用 List<Integer> list = new ArrayList<>(); list.add(2); list.add(3); l...原创 2019-03-10 01:06:42 · 86 阅读 · 0 评论 -
map,以及底层存储分析
本章内容:map的底层原理,底层存储过程,hashmap\treemap的使用map(键值对):有hashMap实现类:hashMap底层实现了哈希表,这是一个非常重要的数据结构。 * 哈希表:基本结构是“数组+链表”,将两个的优点结合起来了。 * 链表:指的是entry类型的对象,每一个entry对象就是一个单向链表结构,存储结...原创 2019-03-10 01:11:08 · 501 阅读 · 0 评论 -
多线程目录
了解多线程、三种创建多线程的方式以及一些方法多线程下载图片静态代理设计模式推导lambda--简化线程代码线程状态线程优先级守护线程并发、同步方法、同步块、锁容器并发之死锁线程协作:生产者消费者模式任务定时调度...原创 2019-03-23 16:26:18 · 147 阅读 · 0 评论