Java 学习
文章平均质量分 74
Java 学习
Z知行T
这个作者很懒,什么都没留下…
展开
-
web前端学习 Day6:会话技术:Cookie,Session / JSP入门学习
一、Cookie1.1 会话技术概述## 会话技术 1. 会话:一次会话中包含多次请求和响应。 * 一次会话:浏览器第一次给服务器资源发送请求,会话建立,直到有一方断开为止 2. 功能:在一次会话的范围内的多次请求间,共享数据 3. 方式: 1. 客户端会话技术:Cookie 2. 服务器端会话技术:Session...原创 2020-08-25 19:17:42 · 144 阅读 · 0 评论 -
Java学习 第三十二章 Junit单元测试 / 反射 / 注解
第三十二章一、Junit单元测试1.1 Junit测试概述测试分类:黑盒测试:不需要写代码,给输入值,看程序是否能够输出期望的值白盒测试:需要写代码的,关注程序具体的执行流程1.1 Junit使用步骤Junit使用:白盒测试步骤:1.定义一个测试类(测试用例) 建议: 测试类名:被测试的类名Test 包名:XXX.xxx.xx.test cn.itcast.test2.定义测试方法:可以独立运行 建议: 方法名:test测试的方法名原创 2020-06-27 13:07:27 · 220 阅读 · 0 评论 -
Java学习 第三十一章 Stream流 / 方法引用
第三十一章一、Stream流1.1 使用传统的方式遍历集合,对集合中的数据进行过滤/* 使用传统的方式,遍历集合,对集合数据进行遍历 */public class Demo01List { public static void main(String[] args) { List<String> list = new ArrayList<>(); list.add("张无忌"); list.add("周芷若")原创 2020-06-26 11:35:23 · 177 阅读 · 0 评论 -
Java学习 第三十章 函数式接口 /常用的函数式接口 Supplier接口、Consumer接口、Predicate接口、Function接口 /
第三十章一、函数式接口1.1 概念函数式接口:有且仅有一个抽象方法的接口1.2 函数式接口的定义@FunctionalInterface //检查是否是函数式接口/* 函数式接口:有且仅有一个抽象方法的接口,成为函数式接口 当然接口中可以包含其他的方法(默认、静态、私有) */@FunctionalInterface //检查是否是函数式接口public interface MyFunctionalInterface { //定义一个抽象方法 public原创 2020-06-25 10:23:55 · 204 阅读 · 0 评论 -
Java学习 第二十九章 网络通信协议 UDP/TCP / IP地址 / TCP通信代码实现 / 文件的上传案例 /模拟B/S服务器
第二十九章一、网络编程入门1.1 软件的结构C/S结构: 全称 Client/Server结构B/S结构:全称Browser/Server 结构1.2 网络通信协议网络通信协议:指的是连接不同操作系统和不同硬件体系结构的互联网络引提供通信支持,是一种网络通用语言。使多台计算机实现连接的必要规则TCP/IP协议: 传输控制协议 / 因特网互联协议(Transmission Control Protocol / Interent Protocol)想要链接网络需要通过TCP/IP协议原创 2020-06-24 11:26:31 · 231 阅读 · 0 评论 -
Java学习 第二十八章 缓冲流 / 转换流 / 序列化
第二十八章一、缓冲流1.1 缓冲流的原理2.2 BufferedOutputStream–字节缓冲输出流java.io.BufferedOutputStream extends OutputStreamBufferedOutputStream :字节缓冲输出流继承自父类的共性成员方法: void close() 关闭此输出流并释放与此流有关的所有系统资源。 void flush() 刷新此输出流,并强制将所有已缓冲的输出字节写入该流中。原创 2020-06-23 16:54:07 · 153 阅读 · 0 评论 -
Java学习 第二十八章 IO概述 / 字节流 / 字符流 /IO异常的处理
第二十七章一、IO1.1 IO概述二、字节流2.1 一切皆为字节2.2 OutputStream类和FileOutputStream类java.io.OutputStream:此抽象类是表示输出字节流的所有类的超类定义了一些子类共性的成员方法:void close() 关闭此输出流并释放与此流有关的所有系统资源。void flush() 刷新此输出流并强制写出所有缓冲的输出字节。void write(byte[] b) 将 b.length 个字节从指定的 byte 数组写入此原创 2020-06-21 22:26:33 · 274 阅读 · 0 评论 -
Java学习 第二十七章 线程池 / Lambda表达式 / File类 / 递归 /Filter过滤器
第二十七章一、线程池1.1 线程池的概念线程池:其实就是一个容纳多个线程的容器,其中的线程可以反复使用,省去了频繁创建线程对象的操作,无需反复创建线程而消耗过多资源。合理利用线程池的三个好处:1.降低系统消耗2.提高响应速度3.提高线程的可管理型1.2 线程池的使用...原创 2020-06-21 12:51:39 · 240 阅读 · 0 评论 -
Java学习 第二十六章 多线程 / 创建多线程的方式 / 线程常用方法 /线程安全问题 /线程状态 / 多线程包子铺实例
第二十六章原创 2020-06-18 20:42:29 · 275 阅读 · 0 评论 -
Java学习 第二十五章 异常/throw关键字/throws/try...catch/finally代码块
第二十五章一、异常概念&异常体系1.1 异常异常:指的是程序在程序执行的过程中,出现的非正常的情况,最终会导致JVM非正常停止,在Java等面向对象的编程语言中,异常本身就是一个类,产生异常就是创建异常对象,并抛出了一个异常对象。Java处理异常的方式是 中断处理1.2 异常体系Throwable 类是 Java 语言中所有错误或异常的超类。从前从前,有位老人,他的名字叫Throwable,他生了两个儿子,大儿子叫Error,二儿子叫Exception。Error表示编译时或者系统原创 2020-06-16 22:57:45 · 215 阅读 · 0 评论 -
Java学习 第二十四章 Map集合 /JDK9对集合添加的优化/模拟斗地主洗牌发牌
第二十四章一、 接口Map<K,V>1.1 Map集合概述将键映射到值的对象。一个映射不能包含重复的键;每个键最多只能映射到一个值。Map中的集合称为双列集合 键是唯一的,值可以重复 java.util.Map<k,v>集合Map集合的特点: 1.Map集合是一个双列集合,一个元素包含两个值(一个key,一个value) 2.Nap集合中的元素,key和value的数据类型可以相同,也可以不同。 3.Map集合中的元素,key是不允许重复的原创 2020-06-15 22:49:04 · 143 阅读 · 0 评论 -
Java学习 第二十三章 数据结构 /List集合 / HashSet / 可变参数 / Collections集合工具类的方法
第二十三章一、 数据结构1.1 栈1.2 队列1.3 数组1.4 链表1.5 红黑树一、 List集合原创 2020-06-15 00:00:27 · 145 阅读 · 0 评论 -
Java学习 第二十二章 Collection集合 / Iterator迭代器/增强for循环/泛型/斗地主案例
第二十二章一、Collection集合1.1 集合概述集合:集合就是java中提供的一种容器,用来存储多个数据数组的长度是固定的,集合的长度是可变的数组中存储的是同一类型的元素,可以存储基本数据类型,集合存储的都是对象,而且对象类型可以不一致。在开发中一般当对象多的时候,使用集合进行存储,1.2 集合框架单列集合:Collection双列集合:Map1.3 Collection集合常用功能java.util.Collection接口 所有单列集合最顶层的接口,里边定义了所原创 2020-06-14 11:40:01 · 199 阅读 · 0 评论 -
Java学习 第二十一章 Object类 / Date类 / Calendar类 /System类 /StringBuilder类/ 包装类 /基本类型与字符串类型之间的相互转换
第二十一章一、Object类1.1 Object类的toString方法/* java.lang.Object 类Object是类层次结构的父类/根类 每个类都使用Object作为超父类 所有对象(包括数组)都实现这个类的方法 */public class Demo01ToString { public static void main(String[] args) { /* Persong类 默认继承了object类 所以可以使用toString方原创 2020-06-13 11:16:16 · 156 阅读 · 0 评论 -
Java学习 第二十章 final关键字 / 四种权限修饰符 / 内部类 / 接口和类作为成员变量类型 / 发红包拼手气案例
第二十章一、final关键字1.1 final关键字的概念与四种用法final 关键字代表最终,不可改变的常见四种用法:1.可以用来修饰一个类2.可以用来修饰一个方法3.可以修饰一个局部变量4.还可以用来修饰一个成员变量1.2 final关键字–修饰一个类当final关键字用来修饰一个类的时候,格式:public final class 类名称{ //....}含义:当前这个类不能有任何的子类。注意:一个类如果是final的,那么其中的所有成员方法都无法进行覆盖重写pub原创 2020-06-11 21:07:56 · 168 阅读 · 0 评论 -
Java学习 第十九章 接口 / 多态 /对象的向上、向下转型 /instanceof关键字/笔记本USB接口案例
第十九章一、接口1.1 接口概述与生活举例1.2 接口定义的基本格式接口就是多个类的公共规范。接口就是一种引用数据类型,最重要的内容就是其中的:抽象方法定义接口的格式:public interface 接口名称{ //接口内容}备注:换成了关键字interface之后,编译生成的字节码文件仍然是:java-->.class如果是java7,那么接口中可以包含的内容有1.常量2.抽象方法如果是java8,那么接口中额外包含的内容有3.默认方法4.静态方法原创 2020-06-09 16:46:48 · 222 阅读 · 0 评论 -
Java学习 第十八章 继承 / super关键字 / this关键字 / 抽象类 / 继承案例:发红包案例
第十八章一、继承1.1 继承的概述面向对象的三大特征:封装、继承、和多态,继承是多态的前提,如果没有继承,就没有多态。1.2 继承的格式在继承的关系中,子类就是一个父类,也就是说子类可以被当作父类看待例如父类是员工,子类是讲师,那么“讲师就是一个员工”关系:is-a定义父类格式:(一个普通的定义)public class 父类名称{}定义子类的格式:public class 子类名称 extends 父类名称{}**父类**//定义一个父类public class Emp原创 2020-06-07 12:31:21 · 163 阅读 · 0 评论 -
Java学习 第十七章 字符串/static关键字/Arrays/Math
第十七章一、字符串概述和特点概述和特点java.lang.String类代表字符串。API当中说:Java 程序中的所有字符串字面值(如 “abc” )都作为此类的实例实现。程序冲所有双引号的字符串,都是String的对象字符串的特点:1.字符串的内容用不可变 【重点】2.正是因为字符串不可改变,所以字符串是可以共享使用的3.字符串效果上相当于是char[]字符数组,但是底层原理是byte[]字节数组字符串构造方法和直接创建创建字符串常见的3+1种方式:public Strin原创 2020-06-05 18:46:28 · 319 阅读 · 0 评论 -
Java学习 第十六章 API / Scanner类 /匿名对象/Random/对象数组/ArrayList
第十六章一、API概述API(Application Programming Interface),应用程序编程接口。Java API 是一本程序员的字典,是JDK中提供给我们使用这些类的说明文档。API下载链接 可用http://www.6down.net/soft/html/22382.html第一看包路径。第二看构造方法 第三看方法摘要二、Scanner类2.1 Scanner类概述Scanner类 的功能:可以实现键盘输入数据到程序当中(都是小写才是关键字)引用类型的一般使用步原创 2020-06-04 18:14:55 · 163 阅读 · 0 评论 -
Java学习 第十五章 成员变量和局部变量的区别 / 三大特征之一 (封装性)/构造方法 /private关键字
第十五章局部变量和成员变量:1.定义位置不一样局部变量:在方法内部定义成员变量:在方法的外部,直接写在类当中2.作用范围不一样局部变量:只能在方法当中使用成员变量:整个类都可以使用3.默认值不一样局部变量:没有默认值,如果想要使用必须进行赋值成员变量:如果没有进行赋值,会有默认值,规则和数组一样4.内存位置不一样局部变量:位于栈内存成员变量:位于堆内存5.生命周期不一样局部变量:随着方法进栈诞生,方法出栈消失成员变量:随着对象创建而诞生,随着对象被垃圾回收而消失/原创 2020-06-03 23:32:18 · 219 阅读 · 0 评论 -
Java学习: 第十四章 面向对象,类
第十四章 面向对象面向对象概述面向对象的特点:封装、继承和多态面向过程:当需要实现一个功能的时候,每一个具体步骤都需要亲力亲为,详细处理每一个细节面向对象:当需要实现一个功能的时候,不关心具体步骤,而是找一个已经具有该功能的人帮我做public class Deme01PrintArray { public static void main(String[] args) { int[] array = {10,20,30,40,50}; //要求打印格式原创 2020-06-02 20:07:11 · 148 阅读 · 0 评论 -
Java学习:第十三章 Java中的内存划分/常见问题
第十三章 Java中的内存划分Java的内存划分:1.栈(Stack):方法的运行一定是在栈当中运行。存放的都是方法中的局部变量。局部变量:方法的参数,或者是方法{}内部的变量作用域:一旦超出作用域,立刻从栈内存当中消失。2.堆(Heap):凡是new出来的东西,都在堆当中。堆内存里面的东西都有第一个地址值:16进制堆内存里面的数据,都有默认值。规则:如果是整数 默认值为0浮点数 0.0字符 '\u0000'布尔 false 引用类型 null3.方原创 2020-05-29 19:08:53 · 84 阅读 · 0 评论 -
Java学习: 第十二章 数组
数组的概念数组是一种容器,可以同时存放多个数据值数组的特点:1.数组是一种引用类型2.数组当中的多个数据,类型必须统一3.数组的长度在程序运行期间不可改变。数组的初始化方式动态初始化(指定长度)动态初始化数组格式:数据类型【】 数组名称 = new 数据类型【数组长度】解析含义:左侧数据类型:数组当中保存的数据,全都是统一的什么类型左侧中的括号:代表一个数组左侧数组名称:给数组取一个名字右侧new:代表新建数组的动作右侧数据类型:必须和左边的数据类型保持一致右侧括号中的原创 2020-05-29 12:20:23 · 119 阅读 · 0 评论 -
Java学习: 第十一章 方法重载的基本使用 /方法重载/重载练习
第十一章 方法重载的基本使用方法重载 对于功能类似的方法来说,因为参数列表不一样,却需要记住那 么多不同方法的名称,太麻烦。 方法的重载(Overload):多个方法的名称一样,但是参数列表 不同 好处:只需要记住唯一一个方法名称,就可以实现类似 的多个功能注意事项:方法重载与下列因素相关:1.参数个数不同2.参数类型不同3.参数的多类型顺序不同方法重载与下列因素无关:1.与参数名称无关2.与返回值类型无关方法重载练习方法重载练习1题目要求:比较两个数据是否相等原创 2020-05-29 10:55:34 · 255 阅读 · 0 评论 -
Java学习: 第十章 方法的练习/使用/注意事项
第十章 方法的练习/使用/注意事项/方法重载/重载练习练习练习1题目要求:定义一个方法来判断两个数字是否相同public class Demo01MethodSame { public static void main(String[] args) { System.out.println(method(2,2));//true System.out.println(method(1,2));//false } /* 三要素:原创 2020-05-29 09:05:03 · 128 阅读 · 0 评论 -
Java学习: 第九章 IEDA使用,以及IDEA中方法的调用, 参数,返回值
第九章 IEDA使用所有的源代码都要写在src里新建包名:英文小写字母,英文标点符号以及数字IDEA的基本配置:1.File–>settings–>Font–>调整字体2.提示(代码自动补全)File–>Settings–>Keymap–>选中Default–>点击duplicate(复制一份IDEA的快捷键)–>main menu–>code–>completion–>basic改成想用的快捷键即可常用快捷键...原创 2020-05-28 11:18:06 · 612 阅读 · 0 评论 -
java学习:第八章 循环语句
第八章 循环语句8.1 循环语句1 --forfor 循环语句格式: for(初始化表达式1;布尔表达式2;步进表达式4){ 循环体3; } 循环结构的基本组成部分,一般可分为四部分: 1.初始化语句:在循环开始最初执行,而且只做一次。 2.条件判断:如果成立,则循环继续;如果不成立,则循环退出/ 3.循环体:重复要做的事情,若干行语句 4.步进语句:每次循环之后都要进行的扫尾工作,执行流程: 执行顺序1234 > 234 >234...2不满足为止 1原创 2020-05-27 22:34:48 · 110 阅读 · 0 评论 -
java学习:第七章 流程控制、判断语句
第七章 流程控制、判断语句第七章 流程控制、判断语句第七章 流程控制、判断语句7.1 顺序结构7.2 判断语句7.2.1 练习7.3 选择语句7.3.1 选择语句--switch7.1 顺序结构//顺序结构 从上往下依次执行//顺序结构 从上往下依次执行public class Demo01Sequence{ public static void main(String[] args){ System.out.println("1"); System.out.println("2")原创 2020-05-27 10:30:16 · 80 阅读 · 0 评论 -
java学习:JShell的简单使用/编译器的两点优化
JShell的简单使用适用于简单的代码 ,Jshell脚本工具是JDK9的新特性,当我们编写的代码非常少的时候,而又不愿意编写类,main方法,也不愿意去编译和运行,可以使用这个方法。编译器的两点优化优化一:对于byte/short/char三种类型来说。如果右侧的数值没有超过范围那么javac编译器将会自动隐含的为我们补上一个(byte)(short)(char)1.如果没有超过左侧的范围,编译器自动补上强转2.如果右侧超过了范围,那么编译器报错public class Demo12原创 2020-05-26 23:13:39 · 168 阅读 · 0 评论 -
Java学习第六章方法入门
第六章 方法入门6.1 概述方法:就是将一个功能取出来,把代码单独定义在一个大括号内,形成一个单独的功能。当需要时就可以去调用。实现了代码的复用性,解决了代码冗余现象。/*定义一个方法的格式:public static void (方法名称)(){方法体}方法名称的命名规则和变量一样。使用小驼峰方法体:也就是大括号中可以包含任意条语句。注意事项:1.方法定义的先后顺序无所谓。2.方法的定义不能产生嵌套包含关系。。3.方法定义好了以后,不会执行,如果想要执行,一定要进行方法的调原创 2020-05-26 21:51:31 · 97 阅读 · 1 评论 -
Java学习第五章数据类型转换和算数运算符
第五章 数据类型转换5.1自动转换当数据类型不一样时会发生数据类型转换、自动类型转换(隐式)1.特点:代码不需要特殊处理2.规则:数据范围从小到大强制类型转换(显式)public class Demo01DataType{ public static void main(String[] args){ System.out.println(1024);//这就是一个整数,默认是int类型 System.out.println(3.14);//这就是一个浮点数,默认就是double类原创 2020-05-26 21:15:30 · 120 阅读 · 0 评论 -
java学习第四章常量、变量
第四章 常量4.1 概述常量:常量是指在java运行期间固定不变的数据。常量的分类:1.字符串常量:凡是用双引号引起来的部分,叫做字符串常量。例如"abc" ,“123”,“hello”2.整数常量:直接写上的数字。例如 100、2003.浮点数常量:直接写上的数字,有小数点。2.54.字符常量: 凡是用单引号引起来的单个字符,就叫做字符常量 例如’A’,‘b’,‘9’,‘中’5.布尔常量:只有两种取值true 、false6.空常量: null ,代表没有任何数据。//const原创 2020-05-23 18:02:01 · 95 阅读 · 1 评论 -
Java学习第三章Helloworld入门程序
第三章Helloworld入门程序3.1程序开发步骤说明 java开发三步:编写、编译、运行 java源程序->编译器->java字节码文件->JVM运行 java.exe:解释器 javac.exe:编译器 1. 编写:新建文本文档,将文件扩展名改为.java后用记事本打开,编写程序 2. 编译:win+r ,cmd 后,进入文件所在目录,输入javac 文件名.java,编译完成,生成.class文件。 3. 运行:输入java 文件名注:如果.java 文件原创 2020-05-22 22:11:14 · 127 阅读 · 0 评论 -
Java学习第二章Java开发环境搭建
Java开发环境搭建Java虚拟机-jvm java 程序的运行环境Java 具有跨平台性Jre (java runtime environment)是java 程序运行时的环境 ,包含jvm和运行 时需要的核心类库JDK (Java Development Kit)Java程序开发工具包,包含JRE和开发人员使用的工具@TOCJDK下载地址https://download.or...原创 2020-03-17 08:32:13 · 129 阅读 · 0 评论 -
Java学习第一章Java语言概述
第一章Java 语言概述1.1 Java 语言能干什么1.1天猫,京东,物流系统,服务器后台处理大数据的存储,查询,数据挖掘等。1.2计算机基础知识二进制十进制数据转成二进制数据:使用除以2获取余数的方式(输出二进制自下而上)。二进制数据转换成十进制数据:使用8421编码数据。HEX: 16进制 DEC: 10进制 OCT:8进制 BIN:2进制字节字节是最小存储单元位(bit):一个数字0或者一个数字1,是一个字节(最小的存储单元)字节(byte):每逢8原创 2020-05-22 19:48:23 · 118 阅读 · 0 评论