
【JavaSE】
文章平均质量分 52
javaSE大纲+适当的细节
小日子呀
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Java基础(46)自定义注解
不包含任何成员变量的注解称为标记注解,例如上面声明的 Test 注解以及基本注解中的 @Override 注解都属于标记注解。根据需要,注解中可以定义成员变量,成员变量以无形参的方法形式来声明,其方法名和返回值定义了该成员变量的名字和类型。定义注解和定义类相似,注解前面的访问修饰符和类一样有两种,分别是公有访问权限(public)和默认访问权限(默认不写)。定义注解与定义接口非常像,如下代码可定义一个简单形式的注解类型。如果在注解里定义了成员变量,那么使用该注解时就应该为它的成员变量指定值,如下代码所示。原创 2023-05-29 14:47:40 · 767 阅读 · 0 评论 -
Java基础(45)字符流的使用
首先创建了 FileReader 字符输入流对象 fr,该对象指向 D:\myJava\HelloJava.java 文件,然后定义变量 i 来接收调用 read() 方法的返回值,即读取的字符。首先创建了一个指向 D:\myJava\book.txt 文件的字符文件输出流对象 fw,然后使用 for 循环录入 4 个字符串,并调用 write() 方法将字符串写入到指定的文件中。该类的构造方法有如下两种重载形式。Reader 类是所有字符流输入类的父类,该类定义了许多方法,这些方法对所有子类都是有效的。原创 2023-05-25 18:01:35 · 999 阅读 · 0 评论 -
Java基础(44)字节流的使用
通过使用 FileInputStream 可以访问文件中的一个字节、一批字节或整个文件。ByteArrayOutputStream 类可以向内存的字节数组中写入数据,该类的构造方法有如下两种重载形式。ByteArrayOutputStream 类中除了有前面介绍的字节输出流中的常用方法以外,还有如下两个方法。FileOutputStream 类的对象表示一个文件字节输出流,可以向流中写入一个字节或一批字节。InputStream 类及其子类的对象表示字节输入流,InputStream 类的常用子类如下。原创 2023-05-23 11:34:26 · 500 阅读 · 0 评论 -
Java基础(43)File类(文件操作类)详解
在Java中,File 类是 java.io 包中唯一代表磁盘文件本身的对象,也就是说,如果希望在程序中操作文件和目录,则都可以通过 File 类来完成。File 类定义了一些方法来操作文件,如新建、删除、重命名文件和目录等。File 类不能访问文件内容本身,如果需要访问文件内容本身,则需要使用输入/输出流。File 类提供了如下三种形式构造方法。使用任意一个构造方法都可以创建一个 File 对象,然后调用其提供的方法对文件进行操作。在表 1 中列出了 File 类的常用方法及说明。;原创 2023-05-19 08:59:05 · 658 阅读 · 0 评论 -
Java基础(41)Java输入/输出流
Java 程序通过流来完成输入/输出,所有的输入/输出以流的形式处理。因此要了解 I/O 系统,首先要理解输入/输出流的概念。输入就是将数据从各种输入设备(包括文件、键盘等)中读取到内存中,输出则正好相反,是将数据写入到各种输出设备(比如文件、显示器、磁盘等)。例如键盘就是一个标准的输入设备,而显示器就是一个标准的输出设备,但是文件既可以作为输入设备,又可以作为输出设备。数据流是 Java 进行 I/O 操作的对象,它按照不同的标准可以分为不同的类别。按照流的方向主要分为输入流和输出流两大类。原创 2023-05-17 09:27:06 · 460 阅读 · 0 评论 -
Java基础(40)反射机制
Java 反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;简单来说,反射机制指的是程序在运行时能够获取自身的信息。在 Java 中,只要给定类的名字,就可以通过反射机制来获得类的所有信息。编译期只是做了一些翻译功能,并没有把代码放在内存中运行起来,而只是把代码当成文本进行操作,比如检查错误。在服务器端,往往需要根据客户的请求,动态调用某一个对象的特定方法。在 ORM 中间件的实现中,运用 Java 反射机制可以读取任意一个 JavaBean 的所有属性,或者给这些属性赋值。原创 2023-05-16 10:16:35 · 321 阅读 · 0 评论 -
Java基础(39)枚举(enum)详解
枚举是一个被命名的整型常数的集合,用于声明一组带标识符的常数。枚举在曰常生活中很常见,例如一个人的性别只能是“男”或者“女”,一周的星期只能是 7 天中的一个等。类似这种当一个变量有几种固定可能的取值时,就可以将它定义为枚举类型。原创 2023-05-15 09:03:25 · 585 阅读 · 0 评论 -
Java基础(38)泛型详解
一般来说编写 Java 泛型方法,其返回值类型至少有一个参数类型应该是泛型,而且类型应该是一致的,如果只有返回值类型或参数类型之一使用了泛型,那么这个泛型方法的使用就被限制了。泛型本质上是提供类型的“类型参数”,也就是参数化类型。Java 中的泛型还支持使用类型通配符,它的作用是在创建一个泛型类对象时限制这个泛型类的类型必须实现或继承某个接口或类。泛型同样可以在类中包含参数化的方法,而方法所在的类可以是泛型类,也可以不是泛型类。在实例化泛型类时,需要指明泛型类中的类型参数,并赋予泛型类属性相应类型的值。原创 2023-05-12 10:31:24 · 378 阅读 · 0 评论 -
Java基础(37)遍历Map集合的方式
Map 有两组值,因此遍历时可以只遍历值的集合,也可以只遍历键的集合,也可以同时遍历。Map 以及实现 Map 的接口类(如 HashMap、TreeMap、LinkedHashMap、Hashtable 等)都可以用以下几种方式遍历。2)使用 for-each 循环遍历 key 或者 values,一般适用于只需要 Map 中的 key 或者 value 时使用。性能上比 entrySet 较好。1)在 for 循环中使用 entries 实现 Map 的遍历(最常见和最常用的)。原创 2023-05-11 14:15:03 · 110 阅读 · 0 评论 -
Java基础(36)Map集合详解
Map 集合里保存着两组值,一组值用于保存 Map 里的 key,另外一组值用于保存 Map 里的 value,key 和 value 都可以是任何引用类型的数据。Map 集合最典型的用法就是成对地添加、删除 key-value 对,接下来即可判断该 Map 中是否包含指定 key,也可以通过 Map 提供的 keySet() 方法获取所有 key 组成的集合,进而遍历 Map 中所有的 key-value 对。从 Map 中取出数据时,只要给出指定的 key,就可以取出对应的 value。原创 2023-05-10 14:15:05 · 469 阅读 · 0 评论 -
Java基础(34)List集合:ArrayList和LinkedList类的用法及区别
List 是一个有序、可重复的集合,集合中每个元素都有其对应的顺序索引。List 集合允许使用重复元素,可以通过索引来访问指定位置的集合元素。List 集合默认按元素的添加顺序设置元素的索引,第一个添加到 List 集合中的元素的索引为 0,第二个为 1,依此类推List 实现了 Collection 接口,它主要有两个常用的实现类:ArrayList 类和 LinkedList 类。原创 2023-05-08 09:56:20 · 686 阅读 · 0 评论 -
Java基础(33)Java集合详解
集合类和数组不一样,数组元素既可以是基本类型的值,也可以是对象(实际上保存的是对象的引用变量),而集合里只能保存对象(实际上只是保存对象的引用变量,但通常习惯上认为集合里保存的是对象)。Java 所有的集合类都位于 java.util 包下,提供了一个表示和操作对象集合的统一构架,包含大量集合接口,以及这些接口的实现类和操作它们的算法。在 图 1 和图 2 中,黄色块为集合的接口,蓝色块为集合的实现类。一下表1 介绍了这些接口的作用。,它们是 Java 集合的根接口,这两个接口又包含了一些子接口或实现类。原创 2023-05-06 10:53:00 · 675 阅读 · 0 评论 -
Java基础(32)自定义异常
运行该程序,当用户输入的年龄为负数时,则拋出 MyException 自定义异常,执行第二个 catch 语句块中的代码,打印出异常信息。自定义异常类一般包含两个构造方法:一个是无参的默认构造方法,另一个构造方法以字符串的形式接收一个定制的异常消息,并将该消息传递给超类的构造方法。实现自定义异常类需要继承 Exception 类或其子类,如果自定义运行时异常类需继承 RuntimeException 类或其子类。先创建一个异常类 MyException,并提供两个构造方法。创建测试类,调用自定义异常类。原创 2023-05-04 10:49:47 · 208 阅读 · 0 评论 -
Java基础(31)try catch语句详解
Java 的异常处理通过 5 个关键字来实现:try、catch、throw、throws 和 finally。try catch 语句用于捕获并处理异常,finally 语句用于在任何情况下(除特殊情况外)都必须执行的代码,throw 语句用于拋出异常,throws 语句用于声明可能会出现的异常。在 Java 中通常采用 try catch 语句来捕获异常并处理。如果 try 语句块中发生异常,那么一个相应的异常对象就会被拋出,然后 catch 语句就会依据所拋出异常对象的类型进行捕获,并处理。原创 2023-04-30 14:18:03 · 593 阅读 · 0 评论 -
Java基础(30)Java异常(Exception)处理及常见异常
其中异常类 Exception 又分为运行时异常和非运行时异常,这两种异常有很大的区别,也称为不检查异常(Unchecked Exception)和检查异常(Checked Exception)。RuntimeException 类及其子类异常,如 NullPointerException、IndexOutOfBoundsException 等,这些异常是不检查异常,程序中可以选择捕获处理,也可以不处理。这些异常一般由程序逻辑错误引起,程序应该从逻辑角度尽可能避免这类异常的发生。原创 2023-04-28 09:08:01 · 240 阅读 · 0 评论 -
Java基础(29)Lambda表达式
以上代码使用匿名内部类的方法 calculate 代码很臃肿,Java 8 采用 Lambda 表达式可以替代匿名内部类。Calculable 接口只有一个方法 calculateInt,参数是两个 int 类型,返回值也是 int 类型。Lambda 表达式(Lambda expression)是一个匿名函数,基于数学中的λ演算得名,也可称为闭包(Closure)。Java Lambda 表达式的优缺点。原创 2023-04-26 09:21:42 · 113 阅读 · 0 评论 -
Java基础(28)instanceof关键字详解
中的一个双目运算符,由于它是由字母组成的,所以也是 Java 的保留关键字。在 Java 中可以使用 instanceof 关键字判断一个对象是否为一个类(或接口、抽象类、父类)的实例,语法格式如下所示。第 4 行代码中,Man 是 Person 的子类,Person 不是 Man 的子类,所以返回结果为 false。Java instanceof 关键字的几种用法。3)obj 是 class 类的直接或间接子类。instanceof 是。原创 2023-04-25 09:18:00 · 403 阅读 · 0 评论 -
Java基础(27)super关键字详解
当子类的成员变量或方法与父类同名时,可以使用 super 关键字来访问。如果子类重写了父类的某一个方法,即子类和父类有相同的方法定义,但是有不同的方法体,此时,我们可以通过 super 来调用父类里面的这个方法。this 指的是当前对象的引用,super 是当前对象的父对象的引用。下面先简单介绍一下 super 和 this 关键字的用法。如果构造方法的第一行代码不是 this() 和 super(),则系统会默认添加 super()。当父类和子类具有相同的数据成员时,JVM 可能会模糊不清。原创 2023-04-25 09:13:04 · 134 阅读 · 0 评论 -
Java基础(26)static关键字(静态变量和静态方法)
static关键字 静态的修饰符static可以修饰内部类、字段、普通方法(不包括局部变量)不可以修饰类(外部类)局部变量、构造方法特点:加了static修饰的字段:该字段被该类所有对象共享:当一个对象修改了该字段,其他对象使用该字段,都是修改之后的值。原创 2023-04-24 15:31:24 · 124 阅读 · 0 评论 -
Java基础(25)this关键字详解(3种用法)
this 关键字是Java常用的关键字,可用于任何实例方法内指向当前对象,也可指向对其调用当前方法的对象,或者在需要当前类型对象引用时使用。当局部变量和成员变量重名的时候,方法会根据就近原则 使用局部变量。原创 2023-04-24 09:06:13 · 203 阅读 · 0 评论 -
JavaSE(24)成员方法的声明和调用
paramList 表示参数列表,这些变量都要有自己的数据类型,可以是原始数据类型,也可以是复杂数据类型,一个方法主要依靠参数来传递消息。方法主体是方法中执行功能操作的语句。method_name 表示自定义的方法名称,方法的名称首先要遵循标识符的命名约定,除此之外,方法的名称第一个单词的第一个字母是小写,第二单词的第一个字母是大写,依此类推。其中 retum_type 是方法返回值的数据类型,数据类型可以是原始的数据类型,即常用的 8 种数据类型,也可以是一个引用数据类型,如一个类、接口和数组等。原创 2023-04-23 09:02:58 · 102 阅读 · 0 评论 -
Java基础(23)成员变量的定义和声明
java类的属性: 成员变量的定义和声明原创 2023-04-21 09:10:56 · 555 阅读 · 0 评论 -
JavaSE(22)数组元素的最大和最小值
Java 求数组元素的最大和最小值原创 2023-04-20 09:05:32 · 124 阅读 · 0 评论 -
Java基础(21)冒泡排序法
冒泡排序法原创 2023-04-19 09:08:04 · 95 阅读 · 0 评论 -
Java基础(20)二维数组详解
而在二维数组中,直接使用 length 属性获取的是数组的行数,在指定的索引后加上 length(如 array[0].length)表示的是该行拥有多少个元素,即列数。中二维数组被看作数组的数组,即二维数组为一个特殊的一维数组,其每个元素又是一个一维数组。Java 并不直接支持二维数组,但是允许定义数组元素是一维数组的一维数组,以达到同样的效果。除了获取单个元素和全部元素之外,还可以单独获取二维数组的某一行中所有元素的值,或者二维数组中某一列元素的值。第3行的第[2]个元素的值是:99.5。原创 2023-04-18 14:33:52 · 736 阅读 · 0 评论 -
JavaSE(19)包装类、装箱和拆箱
Java 1.5 版本之前必须手动拆箱装箱,之后可以自动拆箱装箱,也就是在进行基本数据类型和对应的包装类转换时,系统将自动进行装箱及拆箱操作,不用在进行手工操作,为开发者提供了更多的方便。Integer 类有一个静态的 toString() 方法,可以将整数转换为字符串。基本数据类型转换为包装类的过程称为装箱,例如把 int 包装成 Integer 类的对象;包装类变为基本数据类型的过程称为拆箱,例如把 Integer 类的对象重新简化为 int。包装类和基本数据类型的关系如下表所示。原创 2023-04-18 09:05:46 · 87 阅读 · 0 评论 -
JavaSE(18)日期格式化DateFormat类和SimpleDateFormat类
在Java中,可以使用 DateFormat 类和 SimpleDateFormat 类来格式化日期,下面详细介绍这两个格式化日期类的使用。原创 2023-04-17 11:07:30 · 131 阅读 · 0 评论 -
JavaSE(17)时间日期的处理:Date类、Calendar类详解
Java中获取当前时间,可以使用 java.util.Date 类和 java.util.Calendar 类完成。其中,Date 类主要封装了系统的日期和时间的信息,Calendar 类则会根据系统的日历来解释 Date 对象。下面详细介绍这两个类的具体使用。原创 2023-04-14 09:06:58 · 292 阅读 · 0 评论 -
JavaSE(16)生成随机数random()和Random类
Random 类提供了丰富的随机数生成方法,可以产生 boolean、int、long、float、byte 数组以及 double 类型的随机数.在 Java中要生成一个指定范围之内的随机数字有两种方法:一种是调用 Math 类的 random() 方法,一种是使用 Random 类。提供的所有方法生成的随机数字都是均匀分布的,也就是说区间内部的数字生成的概率是均等的,在表 1 中列出了 Random 类中常用的方法。random() 方法只能产生 double 类型的 0~1 的随机数。原创 2023-04-13 09:14:05 · 112 阅读 · 0 评论 -
JavaSE(15)for循环嵌套输出九九乘法表
嵌套循环既可以是 for循环嵌套 while 循环,也可以是 while 循环嵌套 do-while 循环 ……即各种类型的循环都可以作为外层循环,也可以作为内层循环。当程序遇到嵌套循环时,如果外层循环的循环条件允许,则开始执行外层循环的循环体,而内层循环将被外层循环的循环体来执行——只是内层循环需要反复执行自己的循环体而已。当内层循环执行结束,且外层循环的循环体执行结束时,则再次计算外层循环的循环条件,决定是否再次开始执行外层循环的循环体。原创 2023-04-12 10:30:36 · 798 阅读 · 0 评论 -
JavaSE(14)对象的创建
2. 调用 java.lang.Class 或者 java.lang.reflect.Constuctor 类的 newlnstance() 实例方法。1)String strName = "strValue",其中的“strValue”就是一个 String 对象,由 Java 虚拟机隐含地创建。3)当 Java 虚拟机加载一个类时,会隐含地创建描述这个类的 Class 实例。除了显式创建对象以外,在 Java 程序中还可以隐含地创建对象,例如下面几种情况。类型变量名= new 类名()原创 2023-04-11 09:08:59 · 112 阅读 · 0 评论 -
JavaSE(13)面向对象-类的定义
面向对象-类的定义原创 2023-04-10 09:35:31 · 111 阅读 · 0 评论 -
JavaSE(12)可变参数
java可变参数原创 2023-04-07 10:14:12 · 89 阅读 · 0 评论 -
JavaSE(11)增强for循环foreach
java增强for循环foreach原创 2023-04-07 10:13:12 · 257 阅读 · 0 评论 -
JavaSE(10)数组
基本数组的使用原创 2023-04-06 11:36:16 · 92 阅读 · 0 评论 -
JavaSE(9)方法
方法的使用原创 2023-04-06 09:52:37 · 118 阅读 · 0 评论 -
JavaSE(8)循环结构(while、do-while、for)
循环结构(while、do-while、for)原创 2023-04-06 09:50:48 · 258 阅读 · 0 评论 -
JavaSE(7)条件语句选择结构
java条件语句-选择结构原创 2023-04-04 11:28:22 · 83 阅读 · 0 评论 -
JavaSE(6)运算符、表达式
java运算符、表达式基础知识原创 2023-04-04 11:08:45 · 90 阅读 · 0 评论 -
JavaSE(5)数据类型、数据类型转换
数据类型、数据类型转换原创 2023-04-03 16:59:06 · 133 阅读 · 0 评论