
JAVASE
Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程 [1] 。
Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点 [2] 。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等 [3] 。
石国旺
技术在更新迭代,无时无刻都要学习,希望分享的知识有能够帮助到大家!
座右铭【你花时间做什么事,你就会成为什么样的人!】
展开
-
进制转换和位运算的详解
进制转换和位运算1:按位与 &—>两位全为1,结果才为1//例:0&0=0;0&1=0;1&0=0;1&1=1;//在例如:51&5 -->0011 0011 & 0000 0101 =0000 0001;//二转十:1*2^0=1;51&5=1;/*特殊用法 : (1)清0。如果想将一个单元清0,即...原创 2019-08-03 19:04:36 · 1440 阅读 · 0 评论 -
Collection+泛型
文章目录一.Collection集合1.1 集合概述1.2 集合常用类的继承体系1.3 Collection 常用功能二.Iterator迭代器2.1 Iterator接口2.2 迭代器的实现原理2.3 增强for三.泛型3.1 泛型概述3.2 使用泛型的好处3.3 泛型的定义与使用3.3.1 定义和使用含有泛型的类3.3.2 含有泛型的方法3.3.4 含有泛型的接口3.4 泛型通配符3.4.1 ...原创 2019-09-11 23:03:05 · 166 阅读 · 0 评论 -
List+数据结构+Set+Collections类
文章目录一.List集合1.1 List接口介绍1.2 List接口中常用方法二.数据结构2.1 数据结构介绍2.2 常见数据结构三.List的子类3.1 ArrayList集合3.2 LinkedList集合3.3 Vector集合(了解即可)四.Set接口4.1 HashSet集合介绍4.2 HashSet集合存储数据的结构(哈希表)4.3 HashSet存储自定义类型元素4.4 Linked...原创 2019-09-13 12:22:46 · 154 阅读 · 0 评论 -
Map+可变参数+Debug调试
文章目录一.Map1.1 概述1.2 Map的常用子类1.3 Map的常用方法1.4 Map的遍历方式1:键找值方式方式2:键值对方式1.5 HashMap存储自定义类型1.6 LinkedHashMap介绍1.7 Map集合练习二.补充知识点2.1 可变参数2.2 Idea开发工具的Debug追踪一.Map1.1 概述现实生活中,我们常会看到这样的一种集合:IP地址与主机名,身份证号与...原创 2019-09-14 16:19:08 · 1315 阅读 · 0 评论 -
异常
文章目录一.异常1.1 异常概念1.2 异常体系1.3 异常分类1.4 异常的产生过程解析二.异常的处理2.1 抛出异常throw2.2 Objects非空判断2.3 声明异常throws2.4 捕获异常try…catch2.5 finally 代码块2.6 异常注意事项三.自定义异常3.1 概述3.2 自定义异常的练习四.多线程4.1 并发与并行4.2 线程与进程4.3 创建线程类一.异常1...原创 2019-09-16 22:01:03 · 189 阅读 · 0 评论 -
线程+同步+线程状态
文章目录一.多线程1.1 并发与并行1.2 线程与进程1.3 创建线程类二.多线程(详细)2.1 多线程原理2.2 Thread类2.3 实现接口方式2.4 匿名内部类方式三.线程安全3.1 线程安全3.2 线程同步3.3 同步代码块3.4 同步方法3.5 Lock锁四.线程状态4.1 线程状态概述4.2 睡眠sleep方法4.3 等待和唤醒4.4 等待唤醒案例(包子铺卖包子)一.多线程1.1...原创 2019-09-17 21:11:18 · 178 阅读 · 0 评论 -
线程池、Lambda、函数式接口
文章目录第一章 线程池方式1.1 线程池的思想1.2 线程池概念1.3 线程池的使用第二章 Lambda表达式2.1 函数式编程思想概述2.2 Lambda的优化2.3 Lambda的格式标准格式:参数和返回值:省略格式:2.4 Lambda的前提条件第三章 函数式接口3.1 概述格式自定义函数式接口FunctionalInterface注解3.2 常用函数式接口Supplier接口Consume...原创 2019-09-20 10:59:33 · 607 阅读 · 0 评论 -
方法引用+Stream流
文章目录一.方法引用1.1 概述1.1.1 冗余的Lambda场景1.1.2 方法引用简化1.2 方法引用符1.3 常见引用方式1.3.1 对象名--引用成员方法1.3.2 类名--引用静态方法1.3.3 类--构造引用1.3.4 数组--构造引用二.Stream2.1 引言2.2 流式思想概述2.3 获取流方式2.4 常用方法2.4.1 forEach : 逐一处理2.4.2 count:统计个...原创 2019-09-21 17:39:45 · 163 阅读 · 0 评论 -
File类+递归+IO(字节流)
文章目录一.File类1.1 概述1.2 构造方法1.3 常用方法1.3.1 获取功能的方法1.3.2 绝对路径和相对路径1.3.3 判断功能的方法1.3.4 创建删除功能的方法1.4 目录的遍历二.递归2.1 概述2.2 递归累和2.2.1 计算1 ~ n的和2.2.2 代码执行图解2.3 递归求阶乘2.4 文件搜索三.IO概述3.1 什么是IO3.2 IO的分类3.3 IO的流向说明图解3.4...原创 2019-09-23 11:49:30 · 171 阅读 · 0 评论 -
字节流+字符流
文章目录一.字节流1.1 字节输入流【InputStream】1.2 FileInputStream类1.2.1 构造方法1.2.2 读取字节数据1.3 字节流练习:文件复制1.3.1 复制原理图解1.3.2 案例实现二.字符流2.1 字符输入流【Reader】2.2 FileReader类2.2.1 构造方法2.2.2 读取字符数据2.3 字符输出流【Writer】2.4 FileWriter类...原创 2019-09-24 11:52:40 · 207 阅读 · 0 评论 -
缓冲流+转换流+序列化流+打印流
文章目录一.缓冲流1.1 概述1.2 字节缓冲流1.2.1 构造方法1.2.2 效率测试1.3 字符缓冲流1.3.1 构造方法1.3.2 特有方法1.4 练习:文本排序1.4.1 案例分析1.4.2 案例实现二.转换流2.1 字符编码和字符集2.1.1 字符编码2.1.2 字符集2.2 编码引出的问题2.3 InputStreamReader类2.3.1 构造方法2.3.2 指定编码读取2.4 O...原创 2019-09-25 13:25:49 · 766 阅读 · 0 评论 -
网络编程
文章目录一.网络编程入门1.1 软件结构1.2 网络通信协议1.3 协议分类1.4 网络编程三要素1.4.1 协议1.4.2 IP地址1.4.3 端口号二.TCP通信程序2.1 概述2.2 Socket类2.2.1 构造方法2.2.2 成员方法2.3 ServerSocket类2.3.1 构造方法2.3.2 成员方法2.4 简单的TCP网络程序2.4.1 TCP通信分析图解2.4.2 客户端向服务...原创 2019-09-29 20:53:39 · 173 阅读 · 0 评论 -
Object+Date+System+StringBuilder+包装类
文章目录一.Object类1.1 概述1.2 toString方法1.3 equals方法1.4 Objects类二.日期时间类2.1 Date类2.1.1 概述2.1.2 常用方法2.2 DateFormat类2.2.1 构造方法2.2.2 格式规则2.2.3 常用方法2.3 Calendar类2.3.1 概念2.3.2 获取方式2.3.4 常用方法三.System类3.1 currentTim...原创 2019-09-10 23:29:26 · 148 阅读 · 0 评论 -
接口+多态
文章目录一.接口1.1 概述1.2 定义格式1.3 基本的实现1.4 接口的多实现1.5 接口的多继承【了解】1.6 其他成员特点二.多态2.1 概述2.2 多态的体现2.3 多态的好处2.4 引用类型转换一.接口1.1 概述接口,是Java语言中一种引用类型,是方法的集合,如果说类的内部封装了成员变量、构造方法和成员方法,那么接口的内部主要就是封装了方法。接口的定义,它...原创 2019-09-07 17:48:44 · 107 阅读 · 0 评论 -
Java中的数据类型
Java中的数据类型基本类型有以下四种:int数据类型有:byte(8bit , -128~127)、short(16bit)、int(32bit)、long(64bit)float数据类型有:单精度(32bit float)、双精度(64bit double)boolean类型变量的取值有:true、falsechar数据类型有:unicode字符、16位对应的类类型:int...原创 2019-08-03 20:34:21 · 131 阅读 · 0 评论 -
Java前言+环境+Dos命令+变量+常量+数据类型
Java前言+环境+Dos命令+变量+s常量+数据类型1.常用的Dos命令:一撇一捺 (/ )代表的分别是正斜杠和反斜杠1:打开Dos命令: win+R2:显示目录中的文件和子目录列表: dir3:创建目录(不包含文件): md 文件夹名4:(remove directory)删除一个目录: rd 文件夹名5:进入指定目录: cd\文件夹名6:进入多级目录: cd\文件夹名\文...原创 2019-08-29 00:34:23 · 151 阅读 · 0 评论 -
数据类型的转换、运算符、方法入门
数据类型的转换、运算符、方法入门1. 数据类型转换:在定义变量的时候,等号左右两数据类型不一致(等号左右两数据类型范围不一样)(1)注意事项:javac(编译期)的优化 **a**:针对byte,short,char赋值整数的时候,如果赋值的整数没有超出该类型的取值范围,javac会有一个隐式的强制类型转换。 **b**:针对byte,short,char在运算的时候,如果等号右边没有...原创 2019-08-29 22:04:51 · 259 阅读 · 0 评论 -
流程控制语句
流程控制语句1. 流程控制(在一个程序中,各条语句的执行顺序会对结果有直接影响的控制)==>顺序结构:代码会从上到下依次执行2. 非顺序结构(1)if语句:(判断语句:分情况判断–>true,false)a:格式:if(判断){执行语句}b:执行流程:如果判断返回true,那么走if后面的大括号的内容,if判断之外的语句不管判断成功与否都执行。(2)if…else语...原创 2019-08-30 18:25:55 · 362 阅读 · 0 评论 -
JAVA(I/O)流+序列化
JAVA(I/O)流+序列化1. Java.io.File类用于表示文件(目录)。2. File只用于表示文件(目录)的信息(名称,大小等),不能用于文件内容的访问。3. RandomAccessFile java提供的对文件的内容的访问,既可以读文件,也可以写文件。4. RandomAccessFile 支持随机访问文件,可以访问文件的任意位置。(1)java文件模型在磁盘上的文件...原创 2019-08-30 19:22:56 · 108 阅读 · 0 评论 -
方法和简单的Idea快捷方式
方法和简单的Idea快捷方式1. 定义方法的格式详解 (方法就是:实现功能的集合,就是一个功能的代码块)(1)参数:进入方法内部进行操作的数据(2)返回值:方法中经过一系列的操作之后生成的结果(3)方法定义格式:修饰符 返回值类型 方法名(参数){方法体;返回值;]a:修饰符:public staticb:返回值类型:将来我们方法中产生的结果类型c:方法名:给方法取个名...原创 2019-08-31 22:29:10 · 105 阅读 · 0 评论 -
数组+内存
数组+内存1. 数组(1)概述:容器(2)作用:存放多个数据(3)动态初始化: (定义数组的时候,直接指定了数组的长度(规定数组存多少个数据)),但是没有数据。a.标准形式:1.数据类型[] 数组名 = new 数据类型[数组的长度];b.数据类型:1.我们将来要存在数组中的数据的类型c.[]:1.代表的是数组d.数组名:1.自己取得变量名e....原创 2019-09-02 23:11:09 · 231 阅读 · 0 评论 -
类与对象+封装+构造方法
类与对象+封装+构造方法1. 面向对象(三大特性:封装,继承,多态)(1):面向过程思想(强调步骤.一步一步的把事情完成。)a:打印出 [1,2,3,4,5]:int[] arr={1,2,3,4,5};//1.拼 括号System.out.print("[");//for循环for(int i=0;i<arr.length;i++){if(i==arr.length-...原创 2019-09-03 23:15:04 · 144 阅读 · 0 评论 -
引用类型+Scanner+Random+ArrayList
Scanner+Random+ArrayList1. 引用类型的使用步骤:a:导包:1.1:自动(引入使用的目标的数据类型);1.2:improt 包名.类名1.3:类似:Scanner java.util.Scanner;b:创建对象–>调用构造方法1.1:通过构造方法构造一个对象,以便调用功能c:调用方法–>对象名.方法名();1.1:执行该类中已...原创 2019-09-04 19:24:57 · 140 阅读 · 0 评论 -
String类+static+Arrays类+Math类
String类+static+Arrays类+Math类1. :java.lang.String :(代表字符串–>"abc"所有这样的形式,都是字符串对象)(1)String str= “abc”;这也是对象==>等同于String str2=new String(“abc”);(2)特点:a:字符串不变:字符串的值在创建后不能被更改b:因为String对象是不可变的,...原创 2019-09-05 21:54:30 · 141 阅读 · 0 评论 -
继承+super+this+抽象类
文章目录一.继承1.1 概述1.2 继承的格式一.继承1.1 概述多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要继承那一个类即可其中,多个类可以称为子类,单独那一个类称为父类、超类(superclass)或者基类(基本,基础类)。继承描述的是事物之间的所属关系,这种关系是: is -a 的关系。例如,图中兔子属于食草动物,...原创 2019-09-06 12:23:03 · 122 阅读 · 0 评论 -
Junit+反射+注解
文章目录1.Junit单元测试1.1 Junit介绍1.2 Junit的使用1.3 常用注解2.反射:框架设计的灵魂2.1 获取Class对象的方式2.2 获取Class对象的信息2.2.1 Class对象相关方法2.3 Constructor类2.3.1 Class类中与Constructor相关方法2.3.2 Constructor类中常用方法2.4 Method类2.4.1 Class类中与...原创 2019-10-01 17:08:43 · 964 阅读 · 0 评论