java学习
哈哈哈捧场王
这个作者很懒,什么都没留下…
展开
-
Java Day25
第一章 Junit单元测试1.1 测试的分类黑盒测试:不需要写代码,给输入值,看程序是否能够输出期望值。 白盒测试:需要写代码。关注程序的具体执行流程。1.2 Junit使用1.2.1 使用步骤定义一个测试类(测试用例) 建议 测试类名:被测试的类名Test 包名:xxx.xxx.xx.test 定义测试方法:可以独立运行 建议 方法名:test测试方法的名字 返回值:void 参数列表:空参 给方法添加@Test 倒入junit依原创 2020-08-15 00:20:35 · 96 阅读 · 0 评论 -
Java Day24
第一章 Stream流1.1 引言1.1.1 传统的集合的遍历代码几乎所有的集合都支持直接或者间接的遍历操作。而当我们需要对集合中的元素进行操作的时候,除了必须的添加、删除、获取外,最典型的就是集合的遍历。例如:import java.util.ArrayList;import java.util.List;public class Demo01List { public static void main(String[] args) { // 创建一个Lis原创 2020-08-01 15:59:22 · 188 阅读 · 0 评论 -
Java Day23
第一章 函数式接口1.1 概念函数式接口在java中是指:有且仅有一个抽象方法的接口。 函数式接口,即使用于函数式编程场景的接口,而Java中的函数式编程体现就是Lambda,所以函数式接口就是可以适用于Lambda使用的接口,只有确保接口中有且仅有一个抽象方法,Java中的Lambda才能顺利的被推导。1.2 格式只要确保接口中有且仅有一个抽象方法即可:修饰符 interface 接口名称 { public abstract 返回值类型 方法名称(可选参数信息);原创 2020-07-31 17:10:36 · 109 阅读 · 0 评论 -
Java Day22
第一章 TCP通行程序1.1 概述TCP通信能够实现两台计算机之间的数据交互,通信的两端,要严格区分为客户端(Client)与服务端(Client)。两端通信时步骤 服务端程序,需要事先启动,等待客户端的连接。 客户端主动连接服务器端,连接成功才能通信。服务端不可以主动连接客户端。 在java中,提供了两个类用于实现TCP通信程序: 客户端:java.net.Socket类表示。创建Socket对象,向服务端发出连接请求,服务端响应请求,两者建立连接开始通信。 服务端:java原创 2020-07-30 17:09:04 · 117 阅读 · 0 评论 -
Java Day21
第一章 缓冲流1.1 概述缓冲流也叫做高效流,是对4个基本的FileXxx流的增强,所以也是4个类,按照数据类型分类:字节缓冲流:BufferedInputStream、BufferedOutputStream 字符缓冲流:BufferedReader、BufferedWriter缓冲流的基本原理,是在创建流对象时,会创建一个内置的默认大小的缓冲区数组,通过缓冲区读写,减少系统IO次数,从而提高读写的效率。1.2 字节缓冲流1.2.1 构造方法public BufferedInp原创 2020-07-29 17:30:03 · 193 阅读 · 0 评论 -
Java Day20
第一章 IO概述1.1 什么是IOjava中的IO操作主要指的使用java,io包下的内容,进行输入,输出操作。输入操作也叫做读取数据,输出也叫做写出数据。1.2 IO的分类根据数据的流向分为:输入流和输出流 输入流:把数据从其他设备上读取到内存中的流。 输出流:把数据从内存中写出到其他设备上的流。 根据数据类型分为:字节流和字符流 字节流:以字节为单位,读写数据的流。 字符流:以字符为单位,读写数据的流。 1.4 Java中IO的顶级父类第二章 字节流2.原创 2020-07-28 19:14:01 · 124 阅读 · 0 评论 -
Java Day19
第一章 File类1.1 概述java.io.Filel类是文件和目录名称的抽象表示,主要用于文件和目录的创建、查找和删除等操作。1.2 构造方法public File(String pathname):通过将给定的路径名字字符串转换为抽象路径名来创建新的File实例。 public File(String parent, String child):从父路径名字字符串和子路径名字字符串创建的新的File实例。 public File(File parent, String child)原创 2020-07-27 15:38:35 · 103 阅读 · 0 评论 -
Java Day18
第一章 等带唤醒机制1.1 线程间通信概念:多个线程在处理同一个资源,但是处理动作却不相同。 为什么要处理线程间通信:多个线程并发执行时,在默认情况下CPU是随机切换线程的,当我们需要多个线程来共同完成一件任务,并且我们希望有规律执行,那么多个线程之间需要一些协调通信,以此来达到多线程共同操作一份数据。 如何保证线程间通信有效利用资源:多个线程在处理同一个资源,并且任务不同时,需要线程通信来帮助解决线程之间对同一个变量的使用和操作。就是多个线程在操作同一份数据时,避免对同一共享变量的争夺。也就是原创 2020-07-26 17:53:13 · 99 阅读 · 0 评论 -
Java Day17
第一章 线程1.1 多线程原理定义线程类:// 创建一个Thread类public class MyThread extends Thread { // 在Thread类的子类中重写Thread类中的run方法,设置线程任务 @Override public void run() { for (int i = 0; i < 20; i++) { System.out.println("run:" + i);原创 2020-07-26 09:23:27 · 88 阅读 · 0 评论 -
Java Day16
第一章 异常1.1 异常的概念异常:指的是程序在执行过程中,出现的非正常的情况,最终会导致JVM的非正常停止。在Java等面向对象的编程语言中,异常本身是一个类,产生异常就是创建异常对象并抛出一个异常对象。Java处理异常的方式是中断处理。1.2 异常体系异常机制其实帮助我们找到程序中的问题,异常的根类是java.lang.Throwable,其下有两个子类:java.lang.Error 与 java.lang.Exception,平常我们说的异常指的是前者,如下图:Throwa原创 2020-07-25 11:25:00 · 89 阅读 · 0 评论 -
Java Day15
第一章 Map集合1.1 概述我们通过查看Map接口描述,发现Map接口下的集合Collection接口下的集合,他们存储数据的形式不同,如下图:Collection中的集合,元素是孤立存在的,向集合中存储元素采用一个个元素的方式存储。 Map中的集合,元素是成对存在的。每个元素由键与值两部分组成,通过键与值两个部分组成,通过键可以找所对应的值。 Collection中的集合称为单列集合,Map中的集合称为双列集合。 需要我们注意的是:Map中的集合不能包含重复的键,值可以重复,每个键原创 2020-07-24 12:51:50 · 83 阅读 · 0 评论 -
Java Day14
第一章 List集合1.1 List接口介绍java.util.List接口继承自Collection接口,是单列集合的一个重要分支,习惯性地会给将实现了List接口的对象称为List集合。在List集合中允许出现重复的元素,所有的元素是以一种线性的方式进行存储的,在程序中可以通过索引来访问集合中的指定的元素。此外,List集合还有一个特点就是有序,即元素的存入顺序和取出顺序一致。List接口特点: 是一个元素存取有序的集合。 是一个带有索引的集合。 集合中可以有重复的元素,通过元素的原创 2020-07-23 14:06:04 · 99 阅读 · 0 评论 -
Java Day13
第一章 Collection集合1.1 集合概述集合:Java中提供的一种容器,可以用来存储多个数据。 集合与数组的区别 数组长度是固定的,集合长度是可变的。 数组中存储的是同一类型的元素,可以存储基本数据类型值,集合存储的都是对象,而且对象的类型可以不一致,在开发中一般当对象多的时候,使用集合进行存储。 1.2 集合的框架JavaSE提供了满足各种需求的API,在使用这些API前,先了解其继承与接口操作架构,才能了解何时采用那一个类,以及类之间如何彼此合作,从而达到灵活应用。集原创 2020-07-21 12:37:57 · 112 阅读 · 0 评论 -
Java Day12
第一章 Object类1.1 概述java.lang.Object 类是Java语言中的根类,即所有类的父类,它中描述的所有方法子类都可以使用,在对象实例化的时候,最终找的父类就是Object。 如果一个类没有特别指定父类,那么默认则继承自Object类,例如:public class Myclass /*extends Object*/ {}根据JDK源代码及Object类的API文档,Object类当中包含的方法有11个,下面主要学习其中两个: public String toS原创 2020-07-19 10:08:15 · 460 阅读 · 0 评论 -
Java Day11
第一章 final关键字1.1 概述学习了继承之后,我们知道,子类可以在父类的基础上改写父类的内容,比如方法的重写。但是我们不能随意的去改写类中的内容,为了避免这种情况,Java提供了final关键字,用于修饰不可变内容。final:不可改变。可以用于修饰类,方法和变量。 类:被修饰的类,不能被继承。 方法:被修饰的方法,不能被重写。 变量:被修饰的变量,不能被重新赋值。 1.2 使用方式修饰类 格式如下: final class 类名 {}修饰方法 格式原创 2020-07-16 20:27:35 · 103 阅读 · 0 评论 -
Java Day10
第一章 接口1.1 概述接口:是Java语言中一种引用类型,是方法的集合,如果说累的饿内部封装了成员变量,构造方法和成员变量,那么接口的内部主要就是封装了方法,包含抽象抽象方法(JDK7及以前),默认方法和静态方法(JDK 8),私有方法(JDK 9)。 接口的定义:它与定义类方式相似,但是使用interface关键字,他也会被编译成class文件,但一定要明确它并不是类,而是另外一种引用数据类型。 接口的使用:它不能创建对象,但是可以被实现(implements,类似于被继承)。一个实现接口的原创 2020-07-16 16:37:01 · 75 阅读 · 0 评论 -
Java Day09
第一章 继承1.1 概述由来:多个类中存在相同的属性和行为时,将这些内容抽取到单独的一个类中,那么多个类无需定义这些属性和行为,只需要继承那一个类即可。其中,多个类可以称为子类,单独的那一个类称为父类、超类或基类。继承描述的是事物之间的所属关系,这种关系是:is-a的关系。例如:狮子是动物,蚂蚁是昆虫等。可见父类更加的通用,子类更具体。我们通过继承可以使多种事物之间形成一种关系。 定义:继承就是子类继承父类的属性和行为,是的子类对象具有与父类相同的属性,相同的行为。子类可以直接访问父类中的非私有的原创 2020-07-16 10:09:03 · 132 阅读 · 0 评论 -
Java Day08
第一章 String类1.1 String类概述概述:java.lang.String 类代表字符串,Java程序中所有的字符串文字都可以被看作是实现此类的实例。类String中包括用于检查哥哥字符串的方法。 特点 字符串不变:字符串的值在创建后不改变。 因为String对象是不可变的,所以它们可以被共享。 “abc” 等效于 char[] data = {'a', 'b', 'c'} 1.2 使用步骤查看类 查看构造方法1.3 常用方法判断功能的方法:equals、eq原创 2020-07-02 10:19:01 · 85 阅读 · 0 评论 -
Java Day07
一、API概述:API,应用程序编程接口。Java API是一本程序员的字典,是JDK中提供给我们使用的类的说明文档,这些类将底层的实现封装了起来,我们不需要关心这些类是如何实现,只需要学习这些类如何使用即可。二、Scanner类2.1 什么是Scanner类一个可以解析基本类型和字符串的简单文本扫描器。package cn.itcast.day07.demo01;/** Scanner类的功能,可以实现键盘输入数据,到程序当中。** 引用类型的一般使用步骤:* 1、导包原创 2020-06-24 21:29:14 · 104 阅读 · 0 评论 -
Java Day06
一、面向对象思想1.1 Java面向对象概念:Java语言是一种面向对象的程序设计语言,而面向对象思想是一种程序设计思想,我们在面向对象思想的指引下,使用java语言去设计,开发计算机程序,这里的对象泛指现实中一切事物,每一种事物都具有自己的属性和行为。面向对象思想就是在计算机程序设计过程中,参照现实中事物,将事物的属性特征,行为特征抽象出来,描述成计算机事件的设计思想。它区别于面向过程思想,强调的是通过调用对象的行为来实现功能,而不是自己一步一步去操作实现。...原创 2020-06-22 10:42:26 · 126 阅读 · 0 评论 -
Java Day05
一、数组1.1 数组的定义和访问1.1.1 容器概述容器:是将多个数据存储到一起,每个数据称为该容器的元素1.1.2 数组概念数组概念:数组就是存储数据长度固定的容器,保证多个数据的数据类型要一致1.1.3 数组的定义方式一:数组存储的数据类型[] 数组名字 = new 数组存储的数据类型[长度];数组定义格式详解 数组存储的数据类型:创建的数组容器可以存储什么数据类型。 [ ]:表示数组 数组名字:为定义的数组起个变量名,满足标示符规范,可以使用名字操作数组原创 2020-06-05 23:12:43 · 287 阅读 · 1 评论 -
Java Day04
一、方法方法的定义格式 修饰符: 返回值类型:表示方法运行结果的数据类型,方法执行后将结果返回到调用者 参数列表:方法在运算过程中的未知数据,调用者调用方法时传递 return:将方法执行后的结果带给调用者,方法执行到return,整个方法运行结束 修饰符 返回值类型 方法名(参数列表) { 方法体; return 结果;}package cn.itcast.day04.demo02;/** 方法其实就是若干语句的功能集合** 参数:进入方法的数据原创 2020-06-05 22:30:30 · 126 阅读 · 2 评论 -
Java Day03
一、流程控制1.1 概念在一个程序执行的过程中,各条语句的执行顺序对程序的结果有直接的影响。也就是说,程序的流程对运行结果有直接的影响。所以,我们必须清楚每一条语句的执行流程。而且,很多时候我们要通过控制语句执行顺序来实现我们要完成的功能。1.2 顺序结构/*顺序结构*/public class Demo01Sequence { public static void main(String[] args) { System.out.println("今天天气不错"); Sy原创 2020-06-04 22:34:22 · 209 阅读 · 1 评论 -
Java Day02
一、数据类型转换自动转换:将取值范围范围小的类型自动转换为取值大的类型,例如:byte、short、char与int进行数据运算的时候直接转化为int型。/*当数据类型不一样时,将会发生数据类型转换。自动类型转换(隐式) 1、特点:代码不需要进行特殊处理,自动转换 2、规则:数据范围从小到大。强制类型转换(显示)*/public class Demo01DataType { public static void main(String[] args) { System.o原创 2020-06-04 15:28:03 · 165 阅读 · 1 评论 -
Java Day01
1.1Java虚拟机——JVMJVM:java虚拟机,简称JVM,是运行所有java程序的假象计算机,是java程序的运行环境,是java最具有吸引力的特性之一。我们编写的java代码,都运行在JVM之上。 跨平台:任何软件的运行,都必须要运行在操作系统之上,而我们用java编写的软件可以运行在任何操作系统上,这个特性称为Java语言的跨平台特性。该特性室友JVM实现的,我们编写的程序运行在JVM上,而JVM运行在操作系统上。1.2 JRE和JDKJRE:是java程序的运行时环境,包含JV原创 2020-05-25 08:57:49 · 134 阅读 · 1 评论