
Java基础
Java基础知识,主要是黑马的视频笔记
进击的向东
这个作者很懒,什么都没留下…
展开
-
24 Stream流、方法引用
第一章 Stream流说到Stream便容易想到I/O Stream,而实际上,谁规定“流”就一定是“IO流”呢?在Java 8中,得益于Lambda所带 来的函数式编程,引入了一个全新的Stream概念,用于解决已有集合类库既有的弊端。1.1 引言传统集合的多步遍历代码 几乎所有的集合(如 Collection 接口或 Map 接口等)都支持直接或间接的遍历操作。而当我们需要对集合中的元 ...原创 2020-02-07 15:58:00 · 1309 阅读 · 0 评论 -
23 函数式接口
第一章 函数式接口1.1 概念函数式接口在Java中是指:有且仅有一个抽象方法的接口。函数式接口,即适用于函数式编程场景的接口。而Java中的函数式编程体现就是Lambda,所以函数式接口就是可 以适用于Lambda使用的接口。只有确保接口中有且仅有一个抽象方法,Java中的Lambda才能顺利地进行推导。备注:“语法糖”是指使用更加方便,但是原理不变的代码语法。例如在遍历集合时使用的...原创 2020-02-06 11:45:15 · 1153 阅读 · 0 评论 -
22 网络编程
第一章 网络编程入门1.1软件结构C/S结构 :全称为Client/Server结构,是指客户端和服务器结构。常见程序有QQ、迅雷等软件。B/S结构 :全称为Browser/Server结构,是指浏览器和服务器结构。常见浏览器有谷歌、火狐等。两种架构各有优势,但是无论哪种架构,都离不开网络的支持。网络编程,就是在一定的协议下,实现两台计算机的通信的程序。1.2 网络通信协议...原创 2020-02-06 10:57:21 · 1887 阅读 · 0 评论 -
21 缓冲流、转换流、序列化流、打印流
第一章 缓冲流昨天学习了基本的一些流,作为IO流的入门,今天我们要见识一些更强大的流。比如能够高效读写的缓冲流,能够转换编码的转换流,能够持久化存储对象的序列化流等等。这些功能更为强大的流,都是在基本的流对象基础之上创建而来的,就像穿上铠甲的武士一样,相当于是对基本流对象的一种增强。1.1 概述缓冲流,也叫高效流,是对4个基本的FileXxx 流的增强,所以也是4个流,按照数据类型分类:...原创 2020-02-06 10:45:59 · 1211 阅读 · 2 评论 -
20 字节流、字符流
第一章 IO概述1.1 什么是IO生活中,你肯定经历过这样的场景。当你编辑一个文本文件,忘记了ctrl+s ,可能文件就白白编辑了。当你电脑上插入一个U盘,可以把一个视频,拷贝到你的电脑硬盘里。那么数据都是在哪些设备上的呢?键盘、内存、硬盘、外接设备等等。我们把这种数据的传输,可以看做是一种数据的流动,按照流动的方向,以内存为基准,分为输入input 和输出output ,即流向内存是输入...原创 2020-02-05 20:34:20 · 1494 阅读 · 0 评论 -
19 File类、递归
第一章 File类1.1 概述java.io.File 类是文件和目录路径名的抽象表示,主要用于文件和目录的创建、查找和删除等操作。1.2 构造方法public File(String pathname) :通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例。public File(String parent, String child) :从父路径名字符串和子路径...原创 2020-02-05 17:45:48 · 1605 阅读 · 0 评论 -
18 线程池、Lambda表达式
第一章 等待唤醒机制1.1 线程间通信**概念:**多个线程在处理同一个资源,但是处理的动作(线程的任务)却不相同。比如:线程A用来生成包子的,线程B用来吃包子的,包子可以理解为同一资源,线程A与线程B处理的动作,一个是生产,一个是消费,那么线程A与线程B之间就存在线程通信问题。为什么要处理线程间通信:多个线程并发执行时, 在默认情况下CPU是随机切换线程的,当我们需要多个线程来共同...原创 2020-02-05 16:20:47 · 1323 阅读 · 0 评论 -
17 线程、同步
第一章 线程1.1 多线程原理昨天的时候我们已经写过一版多线程的代码,很多同学对原理不是很清楚,那么我们今天先画个多线程执行时序图 来体现一下多线程程序的执行流程。程序启动运行main时候,java虚拟机启动一个进程,主线程main在main()调用时候被创建。随着调用mt的对象的 start方法,另外一个新的线程也启动了,这样,整个应用就在多线程下运行。 通过这张图我们可以很清晰的看到...原创 2020-02-05 12:15:50 · 1435 阅读 · 0 评论 -
16 异常、线程
第一章 异常1.1 异常概念异常,就是不正常的意思。在生活中:医生说,你的身体某个部位有异常,该部位和正常相比有点不同,该部位的功能将受影响.在程序中的意思就是:异常 :指的是程序在执行过程中,出现的非正常的情况,最终会导致JVM的非正常停止。在Java等面向对象的编程语言中,异常本身是一个类,产生异常就是创建异常对象并抛出了一个异常对象。Java处理异常的方式是中断处理。...原创 2020-02-04 17:07:49 · 2306 阅读 · 0 评论 -
15 Map
第一章 Map集合1.1 概述现实生活中,我们常会看到这样的一种集合:IP地址与主机名,身份证号与个人,系统用户名与系统用户对象等,这种一一对应的关系,就叫做映射。Java提供了专门的集合类用来存放这种对象关系的对象,即java.util.Map接口。我们通过查看Map接口描述,发现Map接口下的集合与Collection接口下的集合,它们存储数据的形式不同,如下图。Collecti...原创 2020-02-04 14:24:07 · 1463 阅读 · 1 评论 -
14 List、Set
第一章 数据结构1.1 数据结构有什么用?当你用着java里面的容器类很爽的时候,你有没有想过,怎么ArrayList就像一个无限扩充的数组,也好像链表之类的。好用吗?好用,这就是数据结构的用处,只不过你在不知不觉中使用了。现实世界的存储,我们使用的工具和建模。每种数据结构有自己的优点和缺点,想想如果Google的数据用的是数组的存储,我们还能方便地查询到所需要的数据吗?而算法,在这么多的数...原创 2020-02-04 13:48:13 · 1921 阅读 · 2 评论 -
13 Collection、泛型
第一章 Collection集合1.1 集合概述在前面基础班我们已经学习过并使用过集合ArrayList ,那么集合到底是什么呢?集合:集合是java中提供的一种容器,可以用来存储多个数据。集合和数组既然都是容器,它们有啥区别呢?数组的长度是固定的。集合的长度是可变的。数组中存储的是同一类型的元素,可以存储基本数据类型值。集合存储的都是对象。而且对象的类型可以不一致。在开发中一般...原创 2020-02-03 22:28:44 · 3026 阅读 · 1 评论 -
12 final、权限、内部类
第一章 final关键字1.1 概述 学习了继承后,我们知道,子类可以在父类的基础上改写父类内容,比如,方法重写。那么我们能不能随意的继承 API中提供的类,改写其内容呢?显然这是不合适的。为了避免这种随意改写的情况,Java提供了 final 关键字, 用于修饰不可改变内容。final: 不可改变。可以用于修饰类、方法和变量。类:被修饰的类,不能被继承。方法:被修饰的方法,不能被...原创 2020-02-03 20:33:15 · 1839 阅读 · 0 评论 -
11 接口、多态
第一章 接口1.1 概述 接口,是Java语言中一种引用类型,是方法的集合,如果说类的内部封装了成员变量、构造方法和成员方法,那么 接口的内部主要就是封装了方法,包含抽象方法(JDK 7及以前),默认方法和静态方法(JDK 8),私有方法 (JDK 9)。 接口的定义,它与定义类方式相似,但是使用 interface 关键字。它也会被编译成.class文件,但一定要明确它并 不是类,而是另...原创 2020-02-03 13:33:06 · 2551 阅读 · 0 评论 -
10 继承、super、this、抽象类
第一章 继承1.1 概述 多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要 继承那一个类即可。如图所示: 其中,多个类可以称为子类,单独那一个类称为父类、超类(superclass)或者基类。 继承描述的是事物之间的所属关系,这种关系是: is-a 的关系。例如,图中兔子属于食草动物,食草动物属于动 物。可见,父类更通用,子类更具体...原创 2020-02-03 11:04:52 · 3327 阅读 · 1 评论 -
09 Object类、常用API
第一章 Object类1.1 概述java.lang.Object类是Java语言中的根类,即所有类的父类。它中描述的所有方法子类都可以使用。在对象实例化的时候,最终找的父类就是Object。如果一个类没有特别指定父类, 那么默认则继承自Object类。例如:public class MyClass /*extends Object*/ { // ...}根据JDK源代码及O...原创 2020-02-02 21:07:52 · 2524 阅读 · 0 评论 -
08 String类、static、Arrays类、Math类
第一章 String类1.1 String类概述 java.lang.String 类代表字符串。Java程序中所有的字符串文字(例如 “abc” )都可以被看作是实现此类的实例。类 String 中包括用于检查各个字符串的方法,比如用于比较字符串,搜索字符串,提取子字符串以及创建具有翻译为大写或小写的所有字符的字符串的副本。特点:字符串不变:字符串的值在创建后不能被更改。因为St...原创 2020-02-02 17:37:36 · 2982 阅读 · 0 评论 -
07 Scanner类、Random类、ArrayList类
第1章 API API(Application Programming Interface),应用程序编程接口。Java API是一本程序员的 字典 ,是JDK中提供给 我们使用的类的说明文档。这些类将底层的代码实现封装了起来,我们不需要关心这些类是如何实现的,只需要学 习这些类如何使用即可。所以我们可以通过查询API的方式,来学习Java提供的类,并得知如何使用它们。API使用步骤:打...原创 2020-02-02 14:43:11 · 3989 阅读 · 1 评论 -
06 类与对象、封装、构造方法
第1章 面向对象思想1.1 面向对象思想概述 Java语言是一种面向对象的程序设计语言,而面向对象思想是一种程序设计思想,我们在面向对象思想的指引下, 使用Java语言去设计、开发计算机程序。 这里的对象泛指现实中一切事物,每种事物都具备自己的属性和行为。面 向对象思想就是在计算机程序设计过程中,参照现实中事物,将事物的属性特征、行为特征抽象出来,描述成计算 机事件的设计思想。 它区别于面...原创 2020-02-02 11:37:01 · 6618 阅读 · 0 评论 -
05 数组
第一章 数组定义和访问1.1 容器概述容器:是将多个数据存储到一起,每个数据称为该容器的元素。生活中的容器:水杯,衣柜,教室1.2 数组概念数组概念: 数组就是存储数据长度固定的容器,保证多个数据的数据类型要一致。1.3 数组的定义1.3.1 方式一格式:数组存储的数据类型[] 数组名字 = new 数组存储的数据类型[长度];数组定义格式详解:数组存储的数据类...原创 2020-02-01 19:10:51 · 3891 阅读 · 0 评论 -
04 idea 、方法
第一章 idea1.1 IDEA常用快捷键第二章 方法2.1 定义方法的格式详解修饰符 返回值类型 方法名(参数列表){ //代码省略... return 结果; }修饰符: public static 固定写法返回值类型: 表示方法运行的结果的数据类型,方法执行后将结果返回到调用者参数列表:方法在运算过程中的未知数据,调用者调用方法时传递return:将方法执...原创 2020-02-01 10:53:43 · 4264 阅读 · 0 评论 -
03 流程控制语句
第一章 流程控制1.1 概述原创 2020-02-01 10:03:20 · 3911 阅读 · 0 评论 -
02 数据类型转换、运算符、方法入门
第一章 数据类型转换Java程序中要求参与的计算的数据,必须要保证数据类型的一致性,如果数据类型不一致将发生类型的转换。1.1 自动转换一个 int 类型变量和一个 byte 类型变量进行加法运算, 结果会是什么数据类型?int i = 1; byte b = 2;运算结果,变量的类型将是 int 类型,这就是出现了数据类型的自动类型转换现象。自动转换:将 取值范围小的类型 自...原创 2020-01-31 23:01:28 · 5073 阅读 · 0 评论 -
01 入门程序、常量、变量
第一章 开发前言1 Java语言概述1.1 什么是Java语言 Java语言是美国Sun公司(Stanford University Network),在1995年推出的高级的编程语言。所谓编程语言,是 计算机的语言,人们可以使用编程语言对计算机下达命令,让计算机完成人们需要的功能。1.2 Java语言发展历史1995年Sun公司发布Java1.0版本1997年发布Java 1....原创 2020-01-31 13:37:59 · 9680 阅读 · 0 评论 -
黑马Java基础笔记大纲
黑马Java基础1 Java基础语法01 入门程序、常量、变量02 数据类型转换、运算符、方法入门03 流程控制语句04 idea 、方法05 数组2 面向对象和封装01 类与对象、封装、构造方法3 常用API01 Scanner类、Random类、ArrayList类02 String类、static、Arrays类、Math类03 Object类、常用API...原创 2020-01-31 12:32:31 · 35157 阅读 · 7 评论