
JAVA
文章平均质量分 57
JavaSE
卿霜寒墨
这个作者很懒,什么都没留下…
展开
-
Java中的枚举类型
Java中的枚举类型简介定义格式枚举类的主要方法枚举的好处枚举的实现原理注意事项简介JDK1.5引入了新的类型——枚举。 在JDK1.5 之前,我们定义常量都是: public static fianl… 很难管理。 枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法。 用于定义有限数量的一组同类常量,例如: 一年的四季: 春、夏、秋、冬。在枚举类型中定义的常量是该枚举类型的实例。定义格式定义和使用基本的枚举是比较简单的,我们来看一个例子。为表示衣服尺寸,我们定义一个枚举类型原创 2021-09-15 12:30:18 · 297 阅读 · 0 评论 -
JSON基本解析
JSON基本解析什么是JSON?JSON格式JAVA与JSONGSONFastJson什么是JSON?JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式。它基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。JSON格式{ "name" :原创 2021-09-13 22:11:46 · 174 阅读 · 0 评论 -
Java多线程---线程池
线程池 Executors在之后的Java开发中,我们会不可避免的创建大量线程,线程完成任务后就被销毁了,这种情况下,线程执行任务的流程是创建线程,创建任务,执行任务,关闭线程,而创建和释放线程会占据整个流程的多数时间。如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程 就会大大降低 系统的效率,因为频繁创建线程和销毁线程需要时间. 线程池就是一个容纳多个线程的容 器,池中的线程可以反复使用,省去了频繁创建线程对象的操作,节省了大量的时间和资源。一个线程池包括以下四原创 2021-09-12 20:18:46 · 280 阅读 · 0 评论 -
Java多线程---线程同步的三种方法
当多线程并发(指两个或多个事件在同一个时间段内发生)时,容易发生线程不安全的问题,我们希望某一段代码执行的过程中CPU不要切换到其它线程工作,这时就需要同步。线程同步的目的是为了保护多个线程反问一个资源时对资源的破坏。线程同步方法是通过锁来实现,每个对象都有切仅有一个锁,这个锁与一个特定的对象关联,线程一旦获取了对象锁,其他访问该对象的线程就无法再访问该对象的其他非同步方法。同步代码块格式:synchronized(锁对象){执行代码块}synchronized的目的是使同一个对象的多个线程,在某个原创 2021-09-10 21:02:35 · 762 阅读 · 0 评论 -
java虚拟机的分区
方法区:1.有时候也称为永久代,在该区内很少发生垃圾回收,但是并不代表不发生GC,在这里进行的GC主要是对方法区里的常量池和对类型的卸载2.方法区主要用来存储已被虚拟机加载的类的信息、常量、静态变量和即时编译器编译后的代码等数据。3.该区域是被线程共享的。4.方法区里有一个运行时常量池,用于存放静态编译产生的字面量和符号引用。该常量池具有动态性,也就是说常量并不一定是编译时确定,运行时生成的常量也会存在这个常量池中。虚拟机栈:1.虚拟机栈也就是我们平常所称的栈内存,它为java方法服务,每个方法原创 2021-07-24 15:43:18 · 155 阅读 · 0 评论 -
Comparable和Comparator的区别
Java中的排序是由Comparable和Comparator这两个接口来提供的。Comparable表示可被排序的,实现该接口的类的对象自动拥有排序功能,在集合内部定义方法实现。Comparator则表示一个比较器,实现了该接口的的类的对象是一个针对目标类的对象定义的比较器,一般情况,这个比较器将作为一个参数进行传递,是在集合外部实现的排序。所以,如想实现排序,就需要在集合外定义 Comparator 接口的方法或在集合内实现 Comparable 接口的方法。Comparable接口Compa原创 2021-07-22 14:50:50 · 83 阅读 · 0 评论 -
Java中的finally一定会被执行吗?
finally一定会被执行吗?答案是不一定。有以下两种情况finally不会被执行程序未执行到try代码块在try或catch中停止了JVM,则finally不会执行.例如停电, 或通过如下代码退出JVM:System.exit(0)try-catch-finally 中,如果 try或catch 中 return 了,finally也会执行执行流程:先计算返回值, 并将返回值存储起来, 等待返回执行finally代码块将之前存储的返回值, 返回出去;需注意:返回值是在final原创 2021-07-08 17:32:24 · 2404 阅读 · 0 评论 -
接口中的方法之静态、默认、私有方法
接口中默认方法接口中默认方法的定义格式:格式:public default 返回值类型 方法名(参数列表){}范例:public default void fun(){}接口中的默认方法的注意事项:默认方法不是抽象方法,所以不强制被重写,但是可以被重写,重写的时候去掉default关键字public可以省略,default不能省略接口中的静态方法接口中静态方法的定义格式:格式:public static 返回值类型 方法名(参数类型){}范例:public static voi原创 2021-03-22 21:40:59 · 785 阅读 · 0 评论 -
Lambda表达式和匿名内部类的区别
所需类型不同匿名内部类:可以是接口,也可以是抽象类,还可以是具体类Lambda表达式:只能是接口使用限制不同如果接口中有且只有一个抽象方法,可以使用Lambda表达式,也可以使用匿名内部类如果接口中多于一个抽象方法,只能使用匿名内部类,而不能使用Lambda表达式实现原理不同匿名内部类:编译之后,产生一个单独的.class字节码文件Lambda表达式:编译之后,没有一个单位的.class字节码文件,对应的字节码会在运行的时候动态生成。...原创 2021-03-14 19:06:41 · 226 阅读 · 0 评论 -
Java集合类--List集合概述
集合类包括List集合、Set集合和Map集合,其中List与Set继承了Collection接口,Collection接口虽然不能直接被使用,但提供了操作集合以及集合中元素的方法,且Set接口和List接口都可以调用Collection接口中的方法。List集合、Set接口和Map接口提供了不同的实现类。表1:Collection接口的常用方法及说明方法功能描述add(Object e)将指定的对象添加到集合内remove(Object o)将指定的对象从集合内移除原创 2021-03-07 20:50:13 · 280 阅读 · 1 评论 -
Java循环的跳转
在Java语言中,有一些跳转的语句,如break、continue以及return等语句。break语句、continue语句和return语句都是用来控制程序的流程转向的,适当和灵活地使用它们可以更方便或更简洁地进行程序的设计。break语句break语句不仅可以用在switch语句中,在while、for、do-while等循环语句结构中的循环体或语句组中也可以使用break语句,其作用是使程序立即退出该结构,转而执行该结构下面的第1条语句。break语句也称之为中断语句,它通常用来在适当的时候退出原创 2020-07-23 14:40:56 · 580 阅读 · 0 评论 -
JAVA程序流程控制语句---循环语句
循环结构是程序中的另一种重要结构。它和顺序结构、选择结构共同作为各种复杂程序的基本构造部件。循环结构的特点是在给定条件成立时,反复执行某个程序段。通常我们称给定条件为循环条件,称反复执行的程序段为循环体。循环体可以是复合语句、单个语句或空语句。循环结构包括while循环、do…while循环、for循环,还可以使用嵌套循环完成复杂的程序控制操作。while循环while循环语句的执行过程是先计算表达式的值,若表达式的值为真,则执行循环体中的语句,继续循环;否则退出该循环,执行while语句后面的语句。循原创 2020-07-23 13:42:52 · 445 阅读 · 0 评论 -
JAVA程序流程控制语句---选择语句
选择语句在程序设计时,经常需要使用选择结构在结构在程序中完成逻辑判断和选择功能,这就需要用到选择语句。Java中的选择语句包括if语句、if-else语句和switch语句。if选择语句if语句只有一个选择的语句结构,所以也叫单分支选择结构,执行过程如下:对if后面括号里的条件表达式进行判断。如果条件表达式的值为true,就执行表达式后面的语句或后面大括号里的多条语句。如果条件表达式的值为false,则跳过if语句,执行下一条语句。if(条件表达式) 语句if(条件表达式){ 一条原创 2020-07-22 16:07:31 · 433 阅读 · 0 评论 -
开发Java的第一个程序
永远的Hello World!原创 2019-12-22 21:14:38 · 180 阅读 · 0 评论 -
JAVA变量与数据类型
变量是计算机中一块特定的内存空间,由一个或多个连续的字节组成。Java常用的数据类型原创 2019-12-29 17:08:03 · 320 阅读 · 0 评论 -
JAVA---数组2---多维数组
多维数组数组元素除了可以是原始数据类型、对象类型之外,还可以是数组,即数组的元素是数组。所以虽然JAVA不支持多维数组,但是可以通过声明数组的数组来实现同样的功能。声明二维数组变量声明二维数组的语法如下:数组类型[ ][ ] 数组名字;数组类型 数组名字[ ][ ];创建二维数组对象有两种方式可以用来创建二维数组对象。使用new运算符在Java中,数组是引用对象,所以可以使用new运算符来直接创建一个数组对象,如以下代码所示。int[][] year = new int[52原创 2020-07-21 16:21:30 · 292 阅读 · 0 评论 -
JAVA---数组1---一维数组
什么是数组?数组是用来存储具有相同数据类型的数据的集合,可以使用共同的名字来引用数组中储存的数据,数组可以存储任何类型的数据,包括原始数据类型和对象,但是一旦指定了数组的类型,就只能用来存储指定类型的数据。数组提供了一种数据凤族的便利方法。在数组中,每一项数据都经过编号,可以通过数组的下标(即数据在数组中的索引值,从0开始。例如,数组中第一项数据的下标为0,第二项数据的下标为1,第N项数据的下标为N-1)来方便的访问。Java语言中数组的特点Java中的数组,既能存储原始数据类型,又能存储对象类型原创 2020-05-24 23:07:18 · 337 阅读 · 0 评论 -
转义序列和格式化输出、Scanner
变量的命名通过变量名可以简单快速地找到内存中存储的数据Java的变量命名规则变量名只能由字母、数字和下划线和$符号组成第一个字符必须是字母或下划线或$符号,不能是数字变量名不能包含除_和$符号以外的其他特殊字符,如%、#、逗号等不可以使用关键字Java中的转义序列转义序列就是包含反斜杠(\)的字符组合后跟字母或用数字的组合符号字符含义\o空字符\n...原创 2020-01-05 21:45:07 · 291 阅读 · 0 评论 -
JAVA体系与特性
JAVA三大体系JAVA有三大体系,分别是Java SE(Java Platform Standard Edition),Java EE(Java Plaform Enterprise Editoin),Java ME(Java Platform Micro Eidtion),Java语言只是Java SE中的一部分。想要学习及开发Java其他平台的应用,必须先了解Java SE以奠定基础...原创 2020-03-19 20:39:35 · 2420 阅读 · 0 评论 -
如何配置JDK环境(详解版)
Java三大体系Java有三大体系,分别是Java SE(Java Platform Standard Edition),Java EE(Java Plaform Enterprise Editoin),Java ME(Java Platform Micor Eidtion),Java语言只是Java SE中的一部分。想要学习及开发Java其他平台的应用,必须先了解Java SE以奠定基础...原创 2019-12-15 20:57:53 · 657 阅读 · 0 评论