
JavaSE部分
文章平均质量分 65
Java基础知识整理。
爱喝椰汁的木木
这个作者很懒,什么都没留下…
展开
-
json字符串转对象集合的几种方式
json字符串转对象集合的几种方式原创 2022-12-05 10:20:03 · 1231 阅读 · 2 评论 -
Java8 stream流的使用总结
java8 新特性 stream 流式操作,一些常用的用法记录。原创 2022-11-08 16:53:01 · 399 阅读 · 1 评论 -
Java构建树形菜单结构
使用递归 构建简单的树形菜单结构。原创 2022-11-01 15:03:55 · 478 阅读 · 0 评论 -
Java基础之接口与抽象类的区别
1、基本语法区别Java中接口和抽象类的定义语法分别为interface与abstract关键字。抽象类:在Java中被abstract关键字修饰的类称为抽象类,被abstract关键字修饰的方法称为抽象方法,抽象方法只有方法的声明,没有方法体。抽象类的特点:a、抽象类不能被实例化只能被继承;b、包含抽象方法的一定是抽象类,但是抽象类不一定含有抽象方法;c、抽象类中的抽象方法的修饰符只能为public或者protected,默认为public;d、一个子类继承一个抽象类,则子类必须实现父类抽象方转载 2021-05-20 17:39:48 · 192 阅读 · 0 评论 -
Java集合类的源码分析
|----Collection接口:单列集合,用来存储一个一个的对象|----List接口:存储序的、可重复的数据。 -->“动态”数组,替换原的数组 |----ArrayList:作为List接口的主要实现类;线程不安全的,效率高;底层使用Object[] elementData存储 |----LinkedList:对于频繁的插入、删除操作,使用此类效率比ArrayList高;底层使用双向链表存储 |----Vector:作为List接口的古老实现类;线程安全的,效率低;底原创 2021-01-23 21:20:18 · 134 阅读 · 0 评论 -
Java基础进阶之线程详解
进程和线程:进程:每个进程都有独立的代码和数据空间(进程上下文),进程间的切换会有较大的开销,一个进程包含1–n个线程。(进程是资源(CPU,内存)分配的基本单位,是静态的概念)线程:同一类线程共享代码和数据空间,每个线程有独立的运行栈和程序计数器(PC),线程切换开销小。(线程是程序运行的最小单位,真正干活的)进程中至少会有一个线程并行:是指同时发生了,程序支持并发而已,任务同时发生了;并发:是同时进行,同时执行某些任务在单核CPU情况下,并不是真正的多线程,只不过是CPU在多个线原创 2021-01-07 22:28:54 · 347 阅读 · 0 评论 -
Java-泛型和注解的总结
泛型什么是泛型?泛型,即“参数化类型”。就是将类型由原来的具体的类型参数化,类似于方法中的变量参数,此时类型也定义成参数形式(可以称之为类型形参),然后在使用/调用时传入具体的类型(类型实参)。例如:GenericClass< T >{ }一些常用的泛型类型变量:E:元素(Element),多用于java集合框架K:关键字(Key)N:数字(Number)T:类型(Type)V:值(Value)泛型的相关使用:集合中的使用,规范化数据,作用在编译期间泛型可以作用在类原创 2021-01-06 17:55:16 · 771 阅读 · 0 评论 -
Java-关于反射的理解和总结
引言:假如你写了一段代码:Object o=new Object();运行了起来!首先JVM会启动,你的代码会编译成一个.class文件,然后被类加载器加载进jvm的内存中,你的类Object加载到方法区中,创建了Object类的class对象到堆中,注意这个不是new出来的对象,而是类的类型对象,每个类只有一个class对象,作为方法区类的数据结构的接口。jvm创建对象前,会先检查类是否加载,寻找类对应的class对象,若加载好,则为你的对象分配内存,初始化也就是代码:new Object()。上面的原创 2021-01-05 22:33:47 · 256 阅读 · 0 评论 -
Java-IO流
在IO流之前要先了解File类的一些操作:File类代表文件或者文件夹File 类只能操作文件的属性,文件的内容是不能操作的。作用:用于对磁盘文件操作。删除、创建等。三种构造方法:几个常用方法 //判断文件或者目录(文件夹)是否存在 System.out.println(file4.exists()); //判断是否是文件 System.out.println("是否是文件:" + file4.isFile()); Syste原创 2021-01-04 21:29:35 · 189 阅读 · 0 评论 -
Java-集合相关知识总结
为什么使用集合?假设,一个班级有30个人,我们需要存储学员的信息,我们可以用数组就解决了。 那换一个问题,一个网站每天要存储的新闻信息,我们知道新闻是可以实时发布的,我们并不知道需要 多大的空间去存储,如果去设置一个很大的数组,要是没有存满,或者不够用,都会影响我们,前者 浪费的空间,后者影响了业务!如果并不知道程序运行时会需要多少对象,或者需要更复杂的方式存储对象,那我们就可以使用Java的 集合!数组的长度是一旦确定就不能改动,数组元素类型必需一致集合长度不定,集合元素类型不要求一样,只能放引用原创 2020-12-30 09:26:06 · 313 阅读 · 0 评论 -
Java-正则表达式简单总结
简介正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE)。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。正则表达式作用给定的字符串是否符合正则表达式的过滤逻辑(称作“匹配”):可以通过正则表达式,从字符串中获取我们想要的特定部分。===========================================从JDK1.4起,Java核心API就引入了java.util.regex程序包,它是一种有价原创 2020-12-27 22:15:01 · 203 阅读 · 0 评论 -
Java-常见类的一些方法总结(Object、String)
String构造方法常用的几种重载方式 String s = new String(); System.out.println(s); String s2 = new String("hello"); System.out.println(s2);//hello char[] chars = {'a', 'd', 'c'}; String s3 = new String(chars); System.ou原创 2020-12-25 17:24:30 · 234 阅读 · 0 评论 -
Java-this/super关键字总结
this关键字每个类的每个非静态方法(没有被static修饰)都会隐含一个this关键字,它指向调用这个方法的对象;当在方法中使用本类属性时,都会隐含地使用this关键字,也可以明确使用。指代的是当前对象本质上就是一个变量,它指向当前对象this关键字只能在方法内部使用,表示对“调用方法的那个对象”的引用;如果是在同一类中调用另外一个方法,则可以不用写this,直接调用this关键字的用法当方法的形参参数名和成员变量名一样的时候用到this区分(this.成员变量名)当成员变量和局部变量原创 2020-12-22 22:56:06 · 155 阅读 · 0 评论 -
Java-方法的重载和重写
重载(Overload)定义:方法重载是指在一个类中定义多个同名的方法,但要求每个方法具有不同的参数的类型或参数的个数。调用重载方法时,Java编译器能通过检查调用的方法的参数类型和个数选择一个恰当的方法。方法重载通常用于创建完成一组任务相似但参数的类型或参数的个数或参数的顺序不同的方法。最常用的地方就是构造器(构造方法)的重载。重载是在一个类里面,方法名字相同,而参数列表不同。参数列表不同分为:参数个数不同参数类型不同参数类型顺序不同第一种情况:参数个数不同第二种情况:参数类型不原创 2020-12-21 22:43:04 · 801 阅读 · 2 评论 -
Java-递归解析与应用
递归简介:程序调用自身的编程技巧称为递归( recursion)。递归做为一种算法在程序设计语言中广泛应用。 一个过程或函数在其定义或说明中有直接或间接调用自身的一种方法,它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,大大地减少了程序的代码量。递归的能力在于用有限的语句来定义对象的无限集合。一般来说,递归需要有边界条件、递归前进段和递归返回段。当边界条件不满足时,递归前进;当边界条件满足时,递归返回。所谓递归就原创 2020-12-20 15:51:13 · 242 阅读 · 0 评论 -
Java基础-数组
定义数组:其实就是一组相同类型数据的容器,它是引用类型。特点数组元素的类型可以使基本数据类型,也可以是引用数据类型数组索引从0开始数组的内存分配是连续的,读取速度比较快组的长度一旦确定不能改变声明数组数据类型 数组名[ ]; (不推荐)数据类型[ ] 数组名; (推荐使用)例如:int[] arr;数组的初始化数组的初始化方式有三种:方式一:int[] arr1 = new int[6];方式二:int[] arr2 = {23, 34, 22, 45};方式三:i原创 2020-12-19 20:12:41 · 188 阅读 · 1 评论 -
Java基础--break,continue,return区别
break,continue,return的使用和区别:break只能在循环体内和switch语句体内使用break;在循环体内的作用:结束一个循环,跳出break所在的循环体。继续执行循环体之后的代码。代码演示:public static void main(String[] args) { test(); } public static void test() { for (int i = 0; i < 10; i++) {原创 2020-12-18 20:30:26 · 303 阅读 · 1 评论 -
Java运算符
java语言的使用过程中,必不可少的就是运算符了。运算符基本分为五类:赋值运算符就是将等号右边的值赋给等号左边的值。算数运算符 //算数运算符 int in = 10; double dl = 3.3 + 10 + 'a'; System.out.println(3 * 3); System.out.println("商:" + 10 / 3); System.out.println("余数:" + 10 % 3);++原创 2020-12-14 23:02:57 · 4071 阅读 · 3 评论 -
Java数据类型
bit (位):位是计算机中存储数据的最小单位,指二进制数中的一个位数,其值为“0”或“1”。byte (字节):字节是计算机存储容量的基本单位,一个字节由8位二进制数组成。在计算机内部,一个字节可以表示一个数据或者一个英文字母,但是一个汉字需要两个字节表示。1byte=8bit1kb=1024byte1mb=1024kb数据类型在java源代码中,每个变量都必须声明一种类型(type)。Java数据类型(type)可以分为两大类:基本类型(primitive types)和引用类型(ref原创 2020-12-14 22:00:11 · 372 阅读 · 0 评论