- 博客(40)
- 资源 (25)
- 收藏
- 关注
原创 Linux
1.Linux的概述:1.1什么是Linux:1.1.1学习Linux之前先了解UnixUnix是一个强大的多用户、多任务操作系统。于1969年在AT&T的贝尔实验室开发。UNIX的商标权由国际开放标准组织(The Open Group)所拥有。UNIX操作系统是商业版,需要收费,价格比Microsoft Windows正版要贵一些。1.1.2Linux的概述:Linux是基于Unix的Linux是一种自由和开放源码的操作系统,存在着许多不同的Linux版本,但它
2021-01-13 21:03:30
999
原创 MySQL多表与事物
多表查询:* 查询语法: select 列名列表 from 表名列表 where....* 准备sql # 创建部门表 CREATE TABLE dept( id INT PRIMARY KEY AUTO_INCREMENT, NAME VARCHAR(20) ); INSERT INTO dept (NAME) VALUES ('开发部'),('市场部'),('财务部');
2021-01-12 19:04:09
214
原创 MySQL约束
DQL:查询语句1. 排序查询 * 语法:order by 子句 * order by 排序字段1 排序方式1 , 排序字段2 排序方式2... * 排序方式: * ASC:升序,默认的。 * DESC:降序。 * 注意: * 如果有多个排序条件,则当前边的条件值一样时,才会判断第二条件。2. 聚合函数:将一列数据作为一个整体,进行纵向的计算。 1. count:计算个数 1.
2021-01-12 19:02:48
193
1
原创 MySQL基础课题笔记
数据库的基本概念1. 数据库的英文单词: DataBase 简称 : DB2. 什么数据库? * 用于存储和管理数据的仓库。3. 数据库的特点: 1. 持久化存储数据的。其实数据库就是一个文件系统 2. 方便存储和管理数据 3. 使用了统一的方式操作数据库 -- SQL4. 常见的数据库软件 * 参见《MySQL基础.pdf》MySQL数据库软件1. 安装 * 参见《MySQL基础.pdf》2. 卸载 1. 去mysql
2021-01-12 19:01:15
169
原创 Junit单元测试、反射、注解
Junit单元测试:* 测试分类: 1. 黑盒测试:不需要写代码,给输入值,看程序是否能够输出期望的值。 2. 白盒测试:需要写代码的。关注程序具体的执行流程。* Junit使用:白盒测试 * 步骤: 1. 定义一个测试类(测试用例) * 建议: * 测试类名:被测试的类名Test CalculatorTest * 包名:xxx.xxx.xx.test
2021-01-12 18:58:43
104
原创 Stream流、方法引用
第一章 Stream流说到Stream便容易想到I/O Stream,而实际上,谁规定“流”就一定是“IO流”呢?在Java 8中,得益于Lambda所带来的函数式编程,引入了一个全新的Stream概念,用于解决已有集合类库既有的弊端。1.1 引言传统集合的多步遍历代码几乎所有的集合(如 Collection 接口或 Map 接口等)都支持直接或间接的遍历操作。而当我们需要对集合中的元素进行操作的时候,除了必需的添加、删除、获取外,最典型的就是集合遍历。例如:import java.u
2021-01-12 18:54:18
138
原创 函数式接口
第一章 函数式接口1.1 概念函数式接口在Java中是指:有且仅有一个抽象方法的接口。函数式接口,即适用于函数式编程场景的接口。而Java中的函数式编程体现就是Lambda,所以函数式接口就是可以适用于Lambda使用的接口。只有确保接口中有且仅有一个抽象方法,Java中的Lambda才能顺利地进行推导。备注:“语法糖”是指使用更加方便,但是原理不变的代码语法。例如在遍历集合时使用的for-each语法,其实底层的实现原理仍然是迭代器,这便是“语法糖”。从应用层面来讲,Java中的Lambd
2021-01-12 16:26:43
138
1
原创 网络编程
第一章 网络编程入门1.1软件结构C/S结构:全称为Client/Server结构,是指客户端和服务器结构。常见程序有QQ、迅雷等软件。B/S结构:全称为Browser/Server结构,是指浏览器和服务器结构。常见浏览器有谷歌、火狐等。两种架构各有优势,但是无论哪种架构,都离不开网络的支持。网络编程,就是在一定的协议下,实现两台计算机的通信的程序。1.2 网络通信协议 网络通信协议:通过计算机网络可以使多台计算机实现连接,位于同一个网络中的计算机在进行连接和...
2021-01-12 15:38:53
227
原创 缓冲流、转换流、序列化流
第一章 缓冲流昨天学习了基本的一些流,作为IO流的入门,今天我们要见识一些更强大的流。比如能够高效读写的缓冲流,能够转换编码的转换流,能够持久化存储对象的序列化流等等。这些功能更为强大的流,都是在基本的流对象基础之上创建而来的,就像穿上铠甲的武士一样,相当于是对基本流对象的一种增强。1.1 概述缓冲流,也叫高效流,是对4个基本的FileXxx流的增强,所以也是4个流,按照数据类型分类:字节缓冲流:BufferedInputStream,BufferedOutputStream 字符缓冲流.
2021-01-12 15:10:14
91
原创 字节流、字符流
第一章 IO概述1.1 什么是IO生活中,你肯定经历过这样的场景。当你编辑一个文本文件,忘记了ctrl+s,可能文件就白白编辑了。当你电脑上插入一个U盘,可以把一个视频,拷贝到你的电脑硬盘里。那么数据都是在哪些设备上的呢?键盘、内存、硬盘、外接设备等等。我们把这种数据的传输,可以看做是一种数据的流动,按照流动的方向,以内存为基准,分为输入input和输出output,即流向内存是输入流,流出内存的输出流。Java中I/O操作主要是指使用java.io包下的内容,进行输入、输出操作。输入...
2021-01-12 14:54:32
121
原创 File类、递归
第一章 File类1.1 概述java.io.File类是文件和目录路径名的抽象表示,主要用于文件和目录的创建、查找和删除等操作。1.2 构造方法public File(String pathname):通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例。 public File(String parent, String child):从父路径名字符串和子路径名字符串创建新的 File实例。 public File(File parent, String chi...
2021-01-12 14:31:18
88
原创 线程池、Lambda表达式
第一章 等待唤醒机制1.1 线程间通信概念:多个线程在处理同一个资源,但是处理的动作(线程的任务)却不相同。比如:线程A用来生成包子的,线程B用来吃包子的,包子可以理解为同一资源,线程A与线程B处理的动作,一个是生产,一个是消费,那么线程A与线程B之间就存在线程通信问题。为什么要处理线程间通信:多个线程并发执行时, 在默认情况下CPU是随机切换线程的,当我们需要多个线程来共同完成一件任务,并且我们希望他们有规律的执行, 那么多线程之间需要一些协调通信,以此来帮我们达到多线程共同.
2021-01-11 23:56:24
134
原创 线程、同步
第一章 线程1.1 多线程原理昨天的时候我们已经写过一版多线程的代码,很多同学对原理不是很清楚,那么我们今天先画个多线程执行时序图来体现一下多线程程序的执行流程。代码如下:自定义线程类:public class MyThread extends Thread{/** 利用继承中的特点* 将线程名称传递 进行设置*/public MyThread(String name){super(name);} /* *重写run方法* 定义线程要执行的代码*/public vo
2021-01-11 23:35:27
82
原创 异常、线程
第一章 异常1.1 异常概念异常,就是不正常的意思。在生活中:医生说,你的身体某个部位有异常,该部位和正常相比有点不同,该部位的功能将受影响.在程序中的意思就是:异常:指的是程序在执行过程中,出现的非正常的情况,最终会导致JVM的非正常停止。在Java等面向对象的编程语言中,异常本身是一个类,产生异常就是创建异常对象并抛出了一个异常对象。Java处理异常的方式是中断处理。异常指的并不是语法错误,语法错了,编译不通过,不会产生字节码文件,根本不能运行.1.2 异常体系异常机制其.
2021-01-11 22:58:17
92
原创 Map
第一章 Map集合1.1 概述现实生活中,我们常会看到这样的一种集合:IP地址与主机名,身份证号与个人,系统用户名与系统用户对象等,这种一一对应的关系,就叫做映射。Java提供了专门的集合类用来存放这种对象关系的对象,即java.util.Map接口。我们通过查看Map接口描述,发现Map接口下的集合与Collection接口下的集合,它们存储数据的形式不同,如下图。Collection中的集合,元素是孤立存在的(理解为单身),向集合中存储元素采用一个个元素的方式存储。 Map中.
2021-01-11 22:38:54
105
原创 List、Set
第一章 数据结构1.1 数据结构有什么用?当你用着java里面的容器类很爽的时候,你有没有想过,怎么ArrayList就像一个无限扩充的数组,也好像链表之类的。好用吗?好用,这就是数据结构的用处,只不过你在不知不觉中使用了。现实世界的存储,我们使用的工具和建模。每种数据结构有自己的优点和缺点,想想如果Google的数据用的是数组的存储,我们还能方便地查询到所需要的数据吗?而算法,在这么多的数据中如何做到最快的插入,查找,删除,也是在追求更快。我们java是面向对象的语言,就好似自动档轿车,C
2021-01-11 22:06:01
135
原创 Collection、泛型
第一章 Collection集合1.1 集合概述在前面基础班我们已经学习过并使用过集合ArrayList,那么集合到底是什么呢?集合:集合是java中提供的一种容器,可以用来存储多个数据。集合和数组既然都是容器,它们有啥区别呢?数组的长度是固定的。集合的长度是可变的。 数组中存储的是同一类型的元素,可以存储基本数据类型值。集合存储的都是对象。而且对象的类型可以不一致。在开发中一般当对象多的时候,使用集合进行存储。1.2 集合框架JAVASE提供了满足各种需求的API,在使用这些A.
2021-01-11 21:21:16
109
原创 Object类、常用API
第一章 Object类1.1 概述java.lang.Object类是Java语言中的根类,即所有类的父类。它中描述的所有方法子类都可以使用。在对象实例化的时候,最终找的父类就是Object。如果一个类没有特别指定父类, 那么默认则继承自Object类。例如:public class MyClass /*extends Object*/ { // ...}根据JDK源代码及Object类的API文档,Object类当中包含的方法有11个。今天我们主要学习其中的2个:publ
2021-01-11 15:44:50
129
原创 final、权限、内部类
第一章 final关键字1.1 概述学习了继承后,我们知道,子类可以在父类的基础上改写父类内容,比如,方法重写。那么我们能不能随意的继承API中提供的类,改写其内容呢?显然这是不合适的。为了避免这种随意改写的情况,Java提供了 final 关键字,用于修饰不可改变内容。final: 不可改变。可以用于修饰类、方法和变量。类:被修饰的类,不能被继承。 方法:被修饰的方法,不能被重写。 变量:被修饰的变量,不能被重新赋值。1.2 使用方式修饰类格式如下:final class
2021-01-11 15:05:53
139
原创 接口、多态
第一章 接口1.1 概述接口,是Java语言中一种引用类型,是方法的集合,如果说类的内部封装了成员变量、构造方法和成员方法,那么接口的内部主要就是封装了方法,包含抽象方法(JDK 7及以前),默认方法和静态方法(JDK 8),私有方法(JDK 9)。接口的定义,它与定义类方式相似,但是使用 interface 关键字。它也会被编译成.class文件,但一定要明确它并不是类,而是另外一种引用数据类型。引用数据类型:数组,类,接口。接口的使用,它不能创建对象,但是可以被实现( impleme
2021-01-10 18:56:00
101
原创 继承、super、this、抽象类
第一章 继承1.1 概述由来多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要继承那一个类即可。如图所示:其中,多个类可以称为子类,单独那一个类称为父类、超类(superclass)或者基类。继承描述的是事物之间的所属关系,这种关系是: is-a 的关系。例如,图中兔子属于食草动物,食草动物属于动物。可见,父类更通用,子类更具体。我们通过继承,可以使多种事物之间形成一种关系体系。定义继承:就是子类继承父类的属性和行为,使得子类对
2021-01-08 23:58:52
105
原创 Sting类、static、Arrays类、Math类
第一章 String类1.1 String类概述概述java.lang.String 类代表字符串。Java程序中所有的字符串文字(例如 "abc" )都可以被看作是实现此类的实例。类 String 中包括用于检查各个字符串的方法,比如用于比较字符串,搜索字符串,提取子字符串以及创建具有翻译为大写或小写的所有字符的字符串的副本。特点1. 字符串不变:字符串的值在创建后不能被更改。String s1 = "abc";s1 += "d";System.out.println(s
2021-01-08 23:20:44
127
原创 Scanner类、Random类、ArrayList类
第1章 API概述API(Application Programming Interface),应用程序编程接口。Java API是一本程序员的 字典 ,是JDK中提供给我们使用的类的说明文档。这些类将底层的代码实现封装了起来,我们不需要关心这些类是如何实现的,只需要学习这些类如何使用即可。所以我们可以通过查询API的方式,来学习Java提供的类,并得知如何使用它们。API使用步骤1. 打开帮助文档。2. 点击显示,找到索引,看到输入框。3. 你要找谁?在输入框里输入,然后回车。4. 看
2021-01-07 23:43:23
127
原创 类与对象、封装、构造方法
第1章 面向对象思想1.1 面向对象思想概述概述Java语言是一种面向对象的程序设计语言,而面向对象思想是一种程序设计思想,我们在面向对象思想的指引下,使用Java语言去设计、开发计算机程序。 这里的对象泛指现实中一切事物,每种事物都具备自己的属性和行为。面向对象思想就是在计算机程序设计过程中,参照现实中事物,将事物的属性特征、行为特征抽象出来,描述成计算机事件的设计思想。 它区别于面向过程思想,强调的是通过调用对象的行为来实现功能,而不是自己一步一步的去操作实现。举例洗衣服:面向过程:把衣
2021-01-07 21:24:40
214
原创 数组
第一章 数组定义和访问1.1 容器概述案例分析现在需要统计某公司员工的工资情况,例如计算平均工资、找到最高工资等。假设该公司有50名员工,用前面所学的知识,程序首先需要声明50个变量来分别记住每位员工的工资,然后在进行操作,这样做会显得很麻烦,而且错误率也会很高。因此我们可以使用容器进行操作。将所有的数据全部存储到一个容器中,统一操作。容器概念容器:是将多个数据存储到一起,每个数据称为该容器的元素。生活中的容器:水杯,衣柜,教室1.2 数组概念数组概念: 数组就是存储数据长度固定的容器,保
2021-01-07 20:44:55
294
原创 IDEA、方法
第一章 开发工具IntelliJ IDEA1.1 开发工具概述IDEA是一个专门针对Java的集成开发工具(IDE),由Java语言编写。所以,需要有JRE运行环境并配置好环境变量。它可以极大地提升我们的开发效率。可以自动编译,检查错误。在公司中,使用的就是IDEA进行开发。1.2 IDEA软件安装此软件集成了32位和64位,双击 ideaIU-2017.3.2.exe 进入安装。1. 欢迎界面2. 选择安装路径3. 配置安装选项4. 开始菜单5. 安装.
2021-01-07 20:06:33
218
原创 流程控制语句
第一章 流程控制1.1 概述在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的。也就是说,程序的流程对运行结果有直接的影响。所以,我们必须清楚每条语句的执行流程。而且,很多时候我们要通过控制语句的执行顺序来实现我们要完成的功能。1.2 顺序结构public static void main(String[] args){//顺序执行,根据编写的顺序,从上到下运行System.out.println(1);System.out.println(2);System.o
2021-01-07 19:07:50
133
原创 数据类型转换、运算符、方法入门
第一章 数据类型转换Java程序中要求参与的计算的数据,必须要保证数据类型的一致性,如果数据类型不一致将发生类型的转换。1.1 自动转换一个 int 类型变量和一个 byte 类型变量进行加法运算, 结果会是什么数据类型?int i = 1;byte b = 2;运算结果,变量的类型将是 int 类型,这就是出现了数据类型的自动类型转换现象。自动转换:将 取值范围小的类型 自动提升为 取值范围大的类型 。public static void main(String[] arg
2021-01-07 18:23:49
346
原创 Java环境变量配置、入门程序、常量、变量
第一章 Java语言开发环境搭建1.1 Java虚拟机——JVMJVM(Java Virtual Machine ):Java虚拟机,简称JVM,是运行所有Java程序的假想计算机,是Java程序的运行环境,是Java 最具吸引力的特性之一。我们编写的Java代码,都运行在 JVM 之上。跨平台:任何软件的运行,都必须要运行在操作系统之上,而我们用Java编写的软件可以运行在任何的操作系统上,这个特性称为Java语言的跨平台特性。该特性是由JVM实现的,我们编写的程序运行在JVM上,而JVM运行在操
2021-01-07 16:23:23
196
转载 猫眼测试开发面经(整理)
作者:小橘子454链接:https://www.nowcoder.com/discuss/105746来源:牛客网一面:(60分钟)1.输入一个网址,在浏览器中会发生什么?https://www.cnblogs.com/wenanry/archive/2010/02/25/1673368.html2.了解同步与互斥吗?怎样解决互斥?互斥:是指某一资源同时只允许一个访问者对其进行访...
2018-09-13 22:35:15
1798
1
原创 软件测试常考面试题
什么是软件测试?软件测试是为了发现错误而执行程序的过程。或者说,软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计一批测试用例(即输入数据及其预期的输出结果),并利用这些测试用例去运行程序,以发现程序错误的过程。 软件测试的目的?测试的目的是想以最少的人力、物力和时间找出软件中潜在的各种错误和缺陷,通过修正错误和缺陷提高软件质量,回避软件发布后由于潜在的软件缺陷和错误造...
2018-09-06 10:32:40
475
转载 红黑树操作手册
前言二叉树知识点回忆以及整理这篇文章中我们说过“二叉树是一个简单的二分查找,但其性能取决于二叉树的层数”。 - 最好的情况是O(logn),存在于完全二叉树情况下,其访问性能近似于折半查找; - 最差的情况是O(n),比如插入的元素所有节点都没有左子树(右子树),这种情况需要将二叉树的全部节点遍历一次。 红黑树本质上是一种二叉查找树,在节点类中添加类一个用来标识颜色的字段,同时具有...
2018-08-28 14:48:55
152
转载 transient关键字的作用及使用方法
1. transient的作用及使用方法 我们都知道一个对象只要实现了Serilizable接口,这个对象就可以被序列化,java的这种序列化模式为开发者提供了很多便利,我们可以不必关系具体序列化的过程,只要这个类实现了Serilizable接口,这个类的所有属性和方法都会自动序列化。 然而在实际开发过程中,我们常常会遇到这样的问题,这个类的有些属性需要序列化,而其他属...
2018-08-27 21:41:17
19933
2
转载 IntelliJ Idea常用快捷键
Alt+回车 导入包,自动修正Ctrl+N 查找类Ctrl+Shift+N 查找文件Ctrl+Alt+L 格式化代码Ctrl+Alt+O 优化导入的类和包Alt+Insert 生成代码(如get,set方法,构造函数等)Ctrl+E或者Alt+Shift+C 最近更改的代码Ctrl+R 替换文本Ctrl+F 查找文本Ctrl+Shift+Space 自动补全代码Ct...
2018-08-27 09:16:29
167
转载 Java基础---java中E,T,?的区别
遇到<A>,<B>,<K,V>等,是用到了java中的泛型。 一般使用<T>来声明类型持有者名称,自定义泛型类时,类持有者名称可以使用T(Type) 如果是容器的元素可以使用E(Element),若键值匹配可以用K(Key)和V(Value)等, 若是<?>,则是默认是允许Object及其下的子类,也就是java的所有对象了。 所以...
2018-08-27 09:03:32
600
转载 简历项目经验模板
项 目 经 验 项目一 客户关系管理系统(CRM) 项目描述 整个项目是基于B/S模式,应用Struts Spring Hibernate DWR和ExtJS五个框架实现了一个绚丽的客户关系管理系统。分为View层(显示层)、Control层(控制层)、Service层(业务逻辑层)、DAO层(数据...
2018-08-24 15:03:10
42679
转载 Java面试常见问题列表
Java 面试随着时间的改变而改变。在过去的日子里,当你知道 String 和 StringBuilder 的区别就能让你直接进入第二轮面试,但是现在问题变得越来越高级,面试官问的问题也更深入。 在我初入职场的时候,类似于 Vector 与 Array 的区别、HashMap 与 Hashtable 的区别是最流行的问题,只需要记住它们,就能在面试中获得更好的机会,但这种情形已经不复存在。如今,你...
2018-08-24 13:54:19
241
转载 排序算法总结
排序算法---选择排序(Selection Sort)算法基本思想:从所有序列中先找到最小的,然后放到第一个位置。之后再看剩余元素中最小的,放到第二个位置……以此类推,就可以完成整个的排序工作了。可以很清楚的发现,选择排序是固定位置,找元素,然后交换。代码实现:选择排序是不稳定的。分析可以看出,对于一个长度为n的数组,需要进行n-1趟操作,才能完全确保排序完成,时间复杂度为O(...
2018-08-24 11:16:06
471
原创 牛客网网络基础常考面试题
1. OSI,TCP/IP,五层协议的体系结构,以及各层协议答:OSI分层(7层):物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。TCP/IP分层(4层):网络接口层、网际层、运输层、应用层。五层协议(5层):物理层、数据链路层、网络层、运输层、应用层。每一层的协议如下:物理层:RJ45、CLOCK、IEEE802.3 (中继器,集线器)数据链路:PPP、FR、HDLC、VLAN、M...
2018-03-23 15:56:50
847
原创 牛客网java常考面试题笔记
1. 什么是Java虚拟机?为什么Java被称作是“平台无关的编程语言”?Java虚拟机是一个可以执行Java字节码的虚拟机进程。java的跨平台不是java源程序的跨平台,如果是这样,那么所以语言都是跨平台的, java源程序先经过javac编译器编译成二进制的.class字节码文件(java的跨平台指的就是.class字节码文件的跨平台,.class字节码文件是与平台无关的),.class...
2018-03-21 09:30:37
1107
尚硅谷大数据技术之Hadoop.xmind
2019-05-28
尚硅谷大数据技术之Linux基础.xmind
2019-05-28
Redis设计与实现
2018-08-19
大数据搜索与日志挖掘及可视化方案——ELK Stack:Elasticsearch Logstash Kibana(第2版).高凯(详细书签)
2018-07-09
JavaEE开发的颠覆者 Spring Boot实战 完整版+书签+源码
2018-05-14
[Spring技术内幕:深入解析Spring架构与设计原理(第2版)].计文柯.扫描版
2018-03-10
Spring+MYBatis企业应用实战
2018-03-10
AXURE RP8网站和APP原型制作从入门到精通
2018-01-31
PowerDesigner-15.1教程
2018-01-31
PowerDesigner16.5_破解文件
2018-01-30
数据科学入门高清完整.pdf
2018-01-30
鸟哥的Linux私房菜服务器架设篇 第三版 .zip
2018-01-30
[算法导论第二版中文版].(美国)Cormen.扫描版.pdf
2018-01-30
java编程思想(第四版)高清完整版PDF
2018-01-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人