JavaSE
关于JavaSE
destiny- freedom
希冀
展开
-
解读Triple、ImmutableTriple、MutableTriple的源码
文章目录Triple介绍三者之间的关系ImmutableTripleMutableTripleTriple介绍包路径为:org.apache.commons.lang3.tupleTriple是一个抽象类,它实现了Comparable、Serializable接口。它的内部还有一个类TripleAdapter,是它的子类。Triple是用于存储三个对象的。三个对象的位置是left、middle、right。因此Triple带泛型是Triple< L ,M ,R>。Triple类原创 2020-12-29 11:37:19 · 2698 阅读 · 0 评论 -
关于MultipartFile与File如何进行转换
文章目录File转MultipartFileMultipartFile转FileFile转MultipartFilepackage edp;import org.apache.poi.util.IOUtils;import org.springframework.mock.web.MockMultipartFile;import org.springframework.web.multipart.MultipartFile;import java.io.File;import java.i原创 2020-12-23 16:04:01 · 5152 阅读 · 1 评论 -
Deque怎么理解?
文章目录介绍ArrayDeque介绍Deque 是 Double ended queue (双端队列) 的缩写。Deque的父接口有:Deque的子接口和实现类有:Deque接口包含了以下方法:Deque 支持容量受限的双端队列,也支持大小不固定的。一般双端队列大小不确定。Deque 的实现类主要分为两种场景:一般场景LinkedList 为大小可变的链表双端队列,允许元素为 nullArrayDeque 为大小可变的数组双端队列,不允许 null并发场景Linke原创 2020-12-09 16:07:59 · 386 阅读 · 0 评论 -
正则表达式在java中是如何使用的?
文章目录原创 2020-12-03 18:26:44 · 2796 阅读 · 0 评论 -
Java8的那些新特性
文章目录Lambda表达式函数式(Functional)接口Java 内置四大核心函数式接口其他接口方法引用与构造器引用方法引用构造器引用数组引用强大的Stream APIStream 的操作三个步骤创建 Stream方式一:通过集合创建 Stream方式二:通过数组创建 Stream方式三:通过Stream的of()创建 Stream方式四:创建无限流Stream 的中间操作Stream 的终止...原创 2020-03-25 22:44:13 · 157 阅读 · 0 评论 -
你还不知道怎么样网络编程吗?
目录网络编程概述网络基础网络通信要素概述如何实现网络中的主机互相通信网络通信协议通信要素1:IP和端口号InetAddress类通信要素2:网络协议TCP/IP协议簇TCP 和 UDPSocketTCP网络编程基于Socket的TCP编程客户端创建Socket对象基于Socket的TCP编程服务器建立 ServerSocket 对象客户端—服务端UDP网络编程UDP网络通信DatagramSock...原创 2020-03-21 19:49:00 · 270 阅读 · 0 评论 -
反射需要知道的东西
目录Java反射机制概述Java Reflection补充:动态语言 vs 静态语言Java反射机制研究及应用反射相关的主要API理解Class类并获取Class实例Class 类Class类的常用方法获取Class类的实例(四种方法)哪些类型可以有Class对象?类的加载与ClassLoader的理解了解:类的加载过程了解:什么时候会发生类初始化?了解:ClassLoader创建运行时类的对象有...原创 2020-03-19 21:31:43 · 368 阅读 · 0 评论 -
IO流——你还不知道的事
目录File类的使用常用构造器路径分隔符常用方法IO流原理及流的分类Java IO原理流的分类IO流体系字节流和处理流InputStream & ReaderInputStreamReaderOutputStream & WriterOutputStreamWriter节点流(或文件流)缓冲流转换流补充:字符编码标准输入、输出流打印流数据流对象流对象的序列化使用对象流序列化对象随机...原创 2020-03-14 19:56:56 · 341 阅读 · 0 评论 -
泛型(Generic)必备小知识点
目录泛型的理解和好处泛型介绍泛型基本语法自定义泛型自定义泛型类自定义泛型接口自定义泛型方法泛型的继承和通配符泛型的继承和通配符说明泛型的理解和好处 使用传统方法的问题分析不能对加入到集合 ArrayList中的数据类型进行约束(不安全)遍历的时候,需要进行类型转换, 如果集合中的数据量较大,对效率有影响 泛型的好处编译时,检查添加元素的类型,提高了安全性减少了类型转换的次数...原创 2020-03-13 19:21:42 · 471 阅读 · 0 评论 -
你还不知道线程这点事吗?
目录基本概念:程序、进程、线程使用多线程的优点何时需要多线程线程的创建和使用线程的创建和启动Thread类API中创建线程的两种方式mt子线程的创建和启动过程继承方式和实现方式的联系与区别Thread类的有关方法(1)Thread类的有关方法(2)线程的调度线程的优先级补充:线程的分类线程的生命周期线程的同步Synchronized的使用方法同步机制中的锁同步的范围释放锁的操作不会释放锁的操作线程...原创 2020-03-12 20:25:15 · 164 阅读 · 0 评论 -
集合这些知识,你必须要知道。
目录java集合框架概述Collection接口方法Iterator迭代器接口Collection子接口一:ListCollection子接口二:SetMap接口Collections工具类java集合框架概述 集合、数组都是对多个数据进行存储操作的结构,简称java容器。(说明:此时的存储,主要指的是内存层面的存储,不涉及到持久化的存储(.txt,.jpg,.avi,数据库中)) 一方面...原创 2020-03-11 13:45:02 · 399 阅读 · 0 评论 -
JAVA常用类
字符串相关的类 String:字符串,使用一对" "引起来表示。 String声明为final的,不可被继承。 String实现了Serializable接口:表示字符串是支持序列化的。 String实现了Comparable接口:表示String可以比较大小 String内部定义了final char[ ] value 用于存储字符串数据。 String:代表不可变的字符序列。简称...原创 2020-03-09 23:44:13 · 401 阅读 · 1 评论 -
JAVA SE注解(Annotation)那些事
注解的概念 从JDK5.0开始,java增加了对元数据(MetaData)的支持,也就是Annotation(注解) Annotation其实就是代码里的特殊标记,这些标记可以在编译,类加载,运行时被读取,并执行相应的处理。通过使用Annotation,程序员可以在不改变原有逻辑的情况下,在源文件中嵌入一些补充信息。 Annotation可以像修饰符一样被使用,可用于修饰包,类,构造器,方...原创 2020-03-06 20:02:07 · 212 阅读 · 0 评论 -
枚举(enumeration)那些事
枚举 jdk5.0之后出现的新特性 枚举对应英文(enumeration,简写enum) 枚举是一组常量的集合。 可以理解为:枚举属于一种特殊的类,里面只包含一组有限的特定的对象。枚举的两种实现方式 自定义类实现枚举 使用enum关键字实现枚举自定义类实现枚举 不需要提供setXxx方法,因为枚举对象值通常为只读 对枚举对象/属性使用final+static共同修饰,...原创 2020-03-06 19:02:37 · 342 阅读 · 0 评论 -
JAVA那些异常
异常概述与异常体系结构 异常:在Java语言中,将程序执行中发生的不正常情况称为“异常”。 (开发过程中的语法错误和逻辑错误不是异常) Java程序在执行过程中所发生的异常事件可分为两类:Error:Java虚拟机无法解决的严重问题。如:JVM系统内部错误、资源 耗尽等严重情况。比如:StackOverflowError和OOM。一般不编写针对性 的代码进行处理。Exception: ...原创 2020-03-05 17:08:19 · 211 阅读 · 0 评论 -
类的成员之五:内部类
内部类的概念一个类的内部又完整的嵌套了另一个完整的类结构。被嵌套的类称为内部类(inner class),嵌套其他类的类称为外部类(outer class)。是我们类的第五大成员。基本使用 内部类按照定义在外部类的成员位置上,可以分为成员内部类(没用static修饰)和静态内部类(使用static修饰)。按照定义在外部类局部位置上(比如方法内)分为局部内部类(有类名)和匿名内部类(没有...原创 2020-03-04 00:09:51 · 190 阅读 · 0 评论 -
接口(Interface)
接口的使用 接口使用interface来定义 java中,接口和类是并列的两个结构。 如何定义接口:定义接口中的成员JDK7以前:只能定义全局常量和抽象方法全局常量:public static final的。书写时,可省略不写,但必须初始化。抽象方法:public abstract的。书写时,可省略不写。JDK8:除了定义全局常量和抽象方法外,还可以定义静态方法、默认方法。...原创 2020-03-03 23:29:22 · 138 阅读 · 0 评论 -
eclipse设置文档注释的格式
原创 2020-03-03 19:33:11 · 907 阅读 · 0 评论 -
Eclipse的main()方法中如何进行参数传递?
1. 当编写好代码以后,首先进行Run as -----> Application2. 当运行好以后。选中代码右击,再进行Run as -------->在弹出来的选项当中点击Run Configurations,接下来弹出如下界面:并在界面当中点击Arguments3. 在弹出的Program arguments框里填写参数,多参数以空格隔开,这里传入23、44这两个参数为...原创 2020-03-03 13:28:06 · 842 阅读 · 1 评论 -
抽象类与抽象方法
概念 随着继承层次中一个个新子类的定义,类变得越来越具体,而父类则更一般,更通用。类的设计应该保证父类和子类能够共享特征。有时将一个父类设计得非常抽象,以至于它没有具体的实例,这样的类叫做抽象类。abstract关键字的使用 abstract:抽象的 abstract可以用来修饰类、方法 abstract修饰类:抽象类此类不能实例化。抽象类中一定有构造器,便于子类实例化时...原创 2020-03-01 20:11:12 · 130 阅读 · 0 评论 -
关键字:final
final:最终的 final可以用来修饰的结构:类,方法,变量 final用来修饰一个类:此类不能被其他类所继承。比如:String类,System类,StringBuffer类 final用来修饰方法:表明此方法不可以被重写。比如:Object类中的getClass(); final用来修饰变量:此时的“变量”就称为一个常量final修饰属性:可以考虑值的位置有:显式初始化,代码...原创 2020-03-01 16:41:13 · 76 阅读 · 0 评论 -
类的成员之四:代码块(或初始化块)
代码块 代码块的作用:用来初始化类、对象 代码块如果有修饰的话,只能使用static 分类:静态代码块 vs 非静态代码块 由父及子,静态先行。静态代码块 内部可以有输出语句 随着类的加载而执行,而且只执行一次 作用:初始化类的信息 如果一个类中定义了多个静态代码块,则按照声明的先后顺序执行 静态代码块的执行,要优先于非静态代码块的执行。 静态代码块内只能调用静态的属性...原创 2020-03-01 14:22:02 · 274 阅读 · 0 评论 -
关键字:static
static关键字的使用 static:静态的 static:可以修饰属性,方法,内部类,代码块 使用static修饰属性:静态变量(或类变量)属性,按是否使用static修饰,又分为:静态属性 vs 非静态属性(实例变量)实例变量:我们创建了类的多个对象,每个对象都独立的拥有一套类中的非静态属性。当修改其中一个对象中的非静态属性时,不会导致其他对象中同样的属性值的修...原创 2020-02-28 22:44:47 · 133 阅读 · 1 评论 -
java的动态绑定机制
当调用对象方法的时候,该方法会和该对象的内存地址绑定 当调用对象属性时,没有动态绑定机制,哪里声明,那里使用package com.atguigu.contact;public class A { public static void main(String[] args) { A a = new B(); System.out.println(a.sum()); // ?...原创 2020-02-28 18:47:14 · 253 阅读 · 0 评论 -
Object类的使用
Object类的使用Object类是所有java类的根父类。如果在类的声明中未使用extends关键字指明其父类,则默认父类为java.lang.Object类。Object类中的功能(属性、方法)就具有通用性。属性:无方法:equals()/toString()/getClass()/hashCode()/clone()/finalize()/wait()/notify()/...原创 2020-02-28 18:35:41 · 219 阅读 · 0 评论 -
包装类(Wrapper)的使用
包装类的使用: 基本数据类型包装成包装类的实例——装箱通过包装类的构造器实现:int i = 500; Integer i = new Integer(i);还可以通过字符串参数构造包装类对象:Float f = new Float(“4.57”);Long l = new Long(“asdf”);//NumberFormatException 获得包装类对象中包装的基本...原创 2020-02-27 17:27:48 · 1945 阅读 · 0 评论 -
面向对象
成员变量与局部变量的区别1.全局变量可以不赋值,直接使用 ,因为有默认初始值,局部变量必须赋值后才能使用,因为没有默认初始值。2.属性加载到堆空间中(非static),而局部变量加载到栈空间中。3.成员变量直接定义在类中的{ }内;而局部变量声明在方法内、方法形参、代码块内、构造器形参、构造器内部的变量。4.属性在声明时,可指明其权限修饰符;而局部变量不可以使用权限修饰符。成员方法1....原创 2020-02-23 19:58:56 · 201 阅读 · 0 评论 -
Eclipse中Debug的使用及Debug中step into功能失灵的处理
调试程序的两种方法System.out.println();Eclipse - Debug调试功能Debug如何调试程序设置断点(可设置多个)debug as java application常用操作:关于Debug中step into功能失灵右击Debug as选择Debug Configurations…选择JRE选择Alternate JR...原创 2020-02-23 10:49:49 · 650 阅读 · 0 评论 -
Eclipse弹出提示code recommenders cannot download its model repository index
按照图示把网络代理设置为Manual:eclipse会联网下载“代码建议器”的东西,有时没网或有代理等情况,会失败,弹出这类提示,以上将Active Provider修改为手动方式,一般情况下不会弹出了,之后还会弹出的话,在弹出对话框选择忽略掉就OK。...原创 2020-02-21 20:33:18 · 565 阅读 · 0 评论 -
cmd下编译与运行UTF-8编码的Java文件(其他编码方式的也可以参考)
起因当我们通过dos命令来编译其他编码格式的java类时,就会报错,提示如下。处理此时,我们需要用相同的编码方式进行编译。语法如下:javac -encoding utf8 Sex.java//其中Sex为文件名当你的编码方式为其他编码时,把utf8改为其他的即可。然后再运行。语法如下:java Sex当你的代码是用Eclipse等开发工具编写时,在dos命令窗口编译运行时,......原创 2020-02-18 18:29:10 · 4967 阅读 · 6 评论 -
原码、反码、补码
八大规则二进制的最高位是符号位:0表示正数,1表示负数。正数的原码,反码,补码都一样(三码合一)。负数的反码=它的原码符号位不变,其它位取反(0->1,1->0)负数的补码=它的反码+1 //=> 它的反码 = 补码 - 10的反码,补码都是0java没有无符号数,换言之,java中的数都是有符号的在计算机运算的时候,都是以补码的方式来运算的.(!!!)当我们...原创 2020-02-17 18:41:24 · 111 阅读 · 0 评论 -
数组、算法
数组介绍数组可以存放多个同一类型数据。数组也是一种数据类型,是引用类型。数组的使用1)数组的定义(动态初始化)2)先声明数组(动态初始化)3)创建数组(动态初始化)4)初始化数组(静态初始化)数组使用注意事项和细节排序的介绍排序是将一群数据,依指定的顺序进行排列的过程。排序的分类1)内部排序:指将需要处理的所有数据都加载到内部存储器中进行排序。包括(交换式排序法、选择...原创 2020-02-16 16:00:45 · 106 阅读 · 0 评论 -
java语言的特点
易学Java语言是易学的。Java语言的语法与C语言和C++语言很接近,使得大多数程序员很容易学习和使用Java。面向对象(oop)Java语言是强制面向对象的(oop)。Java语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为implements)。分布式Java语言是分布式的。Java语言支持Intern...原创 2020-02-12 21:13:23 · 256 阅读 · 0 评论 -
JAVA开发中常见问题和解决方法
找不到文件解决方法:源文件名不存在或者写错,或者当前路径错误。找不到或无法加载主类解决方法:类文件名写错,或者类文件不在当前路径下,或者不在classpath指定路径下。主类名和文件名不一致解决方法:声明为public的主类应与文件名一致,否则编译失败。缺少分号解决方法:编译失败,注意错误出现的行数,再到源代码中指定位置改错。注意:还有业务逻辑错误和生产环境错误。...原创 2020-02-12 20:46:44 · 1627 阅读 · 0 评论 -
JAVA中常用的转义字符
一。 \t :一个制表位,实现对齐的功能\t表示从下一个制表位开始输出后面的内容。每个制表位默认是8个英文字母,4个汉字,如“中国加油”已经满了一个制表位,再\t就会跨过一个制表位。"chailinyan"已经撑破第一个制表位,\t就会从第三个制表位开始。二。 \n :换行符\n表示之后的内容从下一行开始输出,即\n表示结束本行但光标定位到下一行开头;三。 \ :一个\四。" ...原创 2020-02-12 20:30:56 · 418 阅读 · 0 评论 -
Eclipse中字符编码的修改
点击window点击Preferences在【Preferences】页面,依次点击打开【General】–【Workspace 】。默认是GBK,一般修改为UTF-8.原创 2020-02-11 16:24:22 · 482 阅读 · 0 评论 -
如何获取一个随机数
标题原创 2020-01-21 10:08:07 · 2064 阅读 · 0 评论 -
使用Scanner从键盘获取不同类型的变量
具体实现步骤一。首先导入相关的包。二。将Scanner类进行实例化。注意:System.in表示从键盘输入的意思。三。调用Scanner类的相关方法(next(),nextXxx()),来获取指定类型的变量。注意:①对于char型的获取,Scanner没有提供相关的方法。只能获取一个字符串。②String类中有一个名叫charAt()方法。它用于获取字符串中某一个索引上的值(索...原创 2020-01-19 20:55:15 · 587 阅读 · 0 评论 -
程序流程控制
1.流程控制语句是用来控制程序中各语句执行顺序的语句,可以把语句组合成能完成一定功能的小逻辑模块。2.其流程控制方式采用结构化程序设计中规定的三种基本流程结构,即:①顺序结构程序从上到下逐行地执行,中间没有任何判断和跳转。②分支结构根据条件,选择性地执行某段代码。有if…else和switch-case两种分支语句。③循环结构根据循环条件,重复性的执行某段代码。有while、d...原创 2020-01-18 17:16:34 · 1050 阅读 · 0 评论 -
运算符
运算符是一种特殊的符号,用以表示数据的运算、赋值和比较等。运算符的分类 算术运算符 赋值运算符 比较运算符(关系运算符) 逻辑运算符 位运算符 三元运算符算术运算符 算术运算符的注意问题①如果对负数取模,可以把模数负号忽略不记,如:5%-2=1。 但被模数是 负数则不可忽略。此外,取模运算的结果不一定总是整数。②对于除号“/”,它的整数除和小数除是有区别的:整数之间做...原创 2020-01-18 16:38:20 · 278 阅读 · 0 评论