Java基础
作为实习准备,开始慢慢复习之前的java,并作为笔记
机智电丁
这个作者很懒,什么都没留下…
展开
-
Java基础-11(方法引用,Junit测试,反射,注解)
58.方法引用在使用Lambda表达式的时候,我们实际上传递进去的代码就是一种解决方案:拿什么参数做什么操作。那么考虑 一种情况:如果我们在Lambda中所指定的操作方案,已经有地方存在相同方案,那是否还有必要再写重复逻辑?冗余的Lambda场景定义一个打印的函数式接口/* 定义一个打印的函数式接口 */@FunctionalInterfacepublic interface Printable { //定义字符串的抽象方法 void print(String s)原创 2020-07-29 20:33:06 · 366 阅读 · 0 评论 -
Java基础-10(函数式接口,函数式编程,常用函数式接口,Stream流)
54.函数式接口概念函数式接口在Java中是指:有且仅有一个抽象方法的接口。函数式接口,即适用于函数式编程场景的接口。而Java中的函数式编程体现就是Lambda,所以函数式接口就是可 以适用于Lambda使用的接口。只有确保接口中有且仅有一个抽象方法,Java中的Lambda才能顺利地进行推导。备注:“语法糖”是指使用更加方便,但是原理不变的代码语法。例如在遍历集合时使用的for-each语法,其实 底层的实现原理仍然是迭代器,这便是“语法糖”。从应用层面来讲,Java中的Lambda可以被原创 2020-07-28 20:47:20 · 214 阅读 · 0 评论 -
Java基础-9(缓冲流,转换流,序列化,打印流,TCP通信程序)
51.缓冲流概述缓冲流,也叫高效流,是对4个基本的FileXxx 流的增强,所以也是4个流,按照数据类型分类:字节缓冲流:BufferedInputStream,BufferedOutputStream字符缓冲流:BufferedReader,BufferedWriter缓冲流的基本原理,是在创建流对象时,会创建一个内置的默认大小的缓冲区数组,通过缓冲区读写,减少系统IO次数,从而提高读写的效率。字节缓冲流构造方法public BufferedInputStream(Input原创 2020-07-27 21:10:27 · 187 阅读 · 0 评论 -
Java基础-8(File类,递归,文件搜索,字节流以及字符流)
46.IO概述概念把这种数据的传输,可以看做是一种数据的流动,按照流动的方向,以内存为基准,分为输入input 和输出output ,即流向内存是输入流,流出内存的输出流。Java中I/O操作主要是指使用java.io包下的内容,进行输入、输出操作。输入也叫做读取数据,输出也叫做作写出数据。分类根据数据的流向分为:输入流和输出流。输入流 :把数据从其他设备上读取到内存中的流。输出流 :把数据从内存 中写出到其他设备上的流。格局数据的类型分为:字节流和字符流。字节流 :以字节为原创 2020-07-26 20:15:09 · 220 阅读 · 0 评论 -
Java基础-7(多线程,线程安全,线程状态,Lambda表达式)
38.多线程并发∶指两个或多个事件在同一个时间段内发生。并行指两个或多个事件在同一时刻发生(同时发生)。线程和进程进程:是指一个内存中运行的应用程序,每个进程都有一个独立的内存空间,一个应用程序可以同时运行多个进程;进程也是程序的一次执行过程,是系统运行程序的基本单位;系统运行一个程序即是一个进程从创建、运行到消亡的过程。线程︰线程是进程中的一个执行单元,负责当前进程中程序的执行,一个进程中至少有一个线程。一个进程中是可以有多个线程的,这个应用程序也可以称之为多线程程序。简而言之:原创 2020-07-23 19:48:32 · 262 阅读 · 0 评论 -
Java基础-6(可变参数,Collections工具类,Map集合,异常)
36.IDEA的debug调试Debug调试程序:可以让代码逐行执行,查看代码执行的过程,调试程序中出现的bug使用方式:在行号的右边,鼠标左键单击,添加断点(每个方法的第一行,哪里有bug添加到哪里)右键,选择Debug执行程序程序就会停留在添加的第一个断点处执行程序:f8:逐行执行程序f7:进入到方法中shift+f8:跳出方法f9:跳到下一个断点,如果没有下一个断点,那么就结束程序ctrL+f2:退出debug模式,停止程序console:切换到控制台37.异常原创 2020-07-22 22:35:52 · 202 阅读 · 0 评论 -
Java基础-5(泛型,常见数据结构的简单笔记,List集合,Set集合)
27.Collection集合概述集合:集合是java中提供的一种容器,可以用来存储多个数据。集合和数组既然都是容器,它们有啥区别呢?数组的长度是固定的。集合的长度是可变的。数组中存储的是同一类型的元素,可以存储基本数据类型值。集合存储的都是对象。而且对象的类型可以不一致。在开发中一般当对象多的时候,使用集合进行存储。框架集合按照其存储结构可以分为两大类,分别是单列集合java.util.collection和双列集合java.util.Map )Collection :单列集原创 2020-07-19 21:22:53 · 246 阅读 · 0 评论 -
Java基础-4(System类的两个常用方法,StringBuilder类,包装类及拆装箱,Collection集合)
24.System类的两个常用方法java.lang.System类中提供了大量的静态方法,可以获取与系统相关的信息或系统级操作,在System类的API文档中,常用的方法有:public static long currentT imeMillis():返回以毫秒为单位的当前时间。public static void arraycopy(object src, int srcPos, object dest, int destPos, int length) :将数组中指定的数据拷贝到另一一原创 2020-07-19 21:16:30 · 159 阅读 · 0 评论 -
Java基础-3(内部类,成员变量,时间相关类)
18.内部类如果一个事物的内部包含另一个事物,那么这就是一个类内部包含另一个类。例如:身体和心脏的关系。又如:汽车和发动机的关系。分类:1.成员内部类定义格式: 成员内部类的定义格式: 修饰符class 外部类名称{ 修饰符class 内部类名称 { // //... } }注意:内用外,随意访问 ; 外用内,需要内部类对象。public class Body { //外部类 public class Heart { //成员内部类 //内部原创 2020-07-18 22:51:30 · 298 阅读 · 0 评论 -
Java基础-2(抽象,接口,多态,final关键字)
9.Static关键字例子如果一个成员变量前面用static标记,则这个变量属于类,所有成员变量共享同一份数据一旦使用static修饰成员方法, 那么这就成为了静态方法。静态方法不属于对象,而是属于类的。如果没有static关键字,那么必须先创建对象,然后通过对象才能使用它静态方法推荐用 类名.静态方法名来调用,用对象来调用的话容易造成误解;即无论是静态变量还是静态方法,如果有了static,都推荐使用类名称进行调用对于本类中的静态方法,可以省略类名称注意事项:成员方法可原创 2020-07-15 21:47:03 · 132 阅读 · 0 评论 -
Java基础-1(java内存划分,常用类,关键字)
1.java内存划分Java的内存需要划分成为5个部分:栈(Stack) :存放的都是方法中的局部变量。方法的运行- -定要在栈当中运行。局部变量:方法的参数,或者是方法{}内部的变量作用域:一旦超出作用域,立刻从栈内存当中消失。堆(Heap) :凡是new出来的东西,都在堆当中。堆内存里面的东西都有一个地址值: 16进制堆内存里面的数据,都有默认值。规则:如果是整数 默认为0如果是浮点数 默认为0.0如果原创 2020-07-14 21:40:24 · 195 阅读 · 0 评论