JavaSE
文章平均质量分 83
JavaSE
Java追求者
坚持每天学习!
展开
-
Java基础16-自定义注解
1、元注解元注解:除了直接使用JDK 定义好的注解,我们还可以自定义注解,在JDK 1.5中提供了4个标准的用来对注解类型进行注解的注解类,我们称之为 meta-annotation(元注解),他们分别是:@Target@Retention@Documented@Inherited2、@Target@Target:用来定义你定义的注解使用范围它提供的枚举主要有:public enum ElementType { /** 类、接口(包括注解类型)或枚举声明 */ TYPE,原创 2021-12-27 16:59:12 · 206 阅读 · 0 评论 -
关于泛型:Java Class.cast()与强制转换运算符
关于泛型:Java Class.cast()与强制转换运算符原创 2021-12-27 16:33:35 · 898 阅读 · 0 评论 -
Java基础15-多线程
1. 多线程1.1 概念多线程就是指一个进程中同时有多个线程正在执行。1.2 程序、进程、线程的区别说起进程,就不得不说下程序。程序是指令和数据的有序集合,其本身没有任何运行的含义,是一个静态的概念。而进程则是执行程序的一次执行过程,它是一个动态的概念。是系统资源分配的单位。通常在一个进程中可以包含若干个线程,当然一个进程中至少有一个线程,不然没有存在的意义。线程是CPU调度和执行的的单位。注意:很多多线程是模拟出来的,真正的多线程是指有多个cpu,即多核,如服务器。如果是模拟出来的多线程,原创 2021-03-28 00:05:08 · 130 阅读 · 2 评论 -
Java基础13-缓冲流、转换流、序列化流、打印流
1. 缓冲流今天我们要见识一些更强大的流。比如能够高效读写的缓冲流,能够转换编码的转换流,能够持久化存储对象的序列化流等等。1.1 概述缓冲流,也叫高效流,是对4个基本的FileXxx 流的增强,所以也是4个流,按照数据类型分类:字节缓冲流:BufferedInputStream,BufferedOutputStream字符缓冲流:BufferedReader,BufferedWriter缓冲流的基本原理,是在创建流对象时,会创建一个内置的默认大小的缓冲区数组,通过缓冲区读写,减少系统IO次原创 2021-03-16 11:01:56 · 129 阅读 · 0 评论 -
Java基础14-网络编程
1. 网络编程1.1 什么是网络编程网络编程:在一定的协议下,实现两台或者以上计算机之间的通信。1.2 什么是计算机网络计算机网络:是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。1.3 网络通信协议网络通信协议: 通过计算机网络可以使多台计算机实现连接,位于同一个网络中的计算机在进行连接和通信时需要遵守一定的规则,这就好比在道路中行驶的汽车一定要遵守交通规则一样。在原创 2021-03-15 21:54:04 · 128 阅读 · 0 评论 -
Java基础-BIO/NIO/AIO三种模型概述
内容参考:https://www.bilibili.com/video/BV1Lv411B7n3/?spm_id_from=333.788.videocard.6原创 2021-03-11 23:58:51 · 132 阅读 · 0 评论 -
Java基础12-字节流、字符流
1. IO1.1 什么是IO数据的传输,可以看做是一种数据的流动,按照流动的方向,以内存为基准,分为 输入input 和 输出output ,即流向内存是输入流,流出内存的输出流。Java中I/O操作主要是指使用 java.io 包下的内容,进行输入、输出操作。输入也叫做读取数据,输出也叫做作写出数据。1.2 IO的分类根据数据的流向分为:输入流和输出流。输入流 :把数据从 其他设备 上读取到 内存 中的流。输出流 :把数据从 内存 中写出到 其他设备 上的流。根据数据的类型分为:字原创 2021-03-11 17:01:00 · 183 阅读 · 0 评论 -
Java基础11-File类、递归
1. File类1.1 什么是File类java.io.File 类是文件和目录路径名的抽象表示,主要用于文件和目录的创建、查找和删除等操作。1.2 构造方法public File(String pathname):通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例。public File(String parent, String child) :从父路径名字符串和子路径名字符串创建新的 File实例。public File(File parent, String child)原创 2021-03-11 11:55:53 · 113 阅读 · 0 评论 -
Java基础10-异常、线程
1. 异常1.1 什么是异常异常 :指的是程序在执行过程中,出现的非正常的情况,最终会导致JVM的非正常停止。异常指的并不是语法错误,语法错了,编译不通过,不会产生字节码文件,根本不能运行。1.2 异常体系异常机制其实是帮助我们找到程序中的问题,异常的根类是 java.lang.Throwable ,其下有两个子类:java.lang.Error 与java.lang.Exception ,平常所说的异常指java.lang.Exception。Throwable体系:Error:严重原创 2021-03-05 21:55:27 · 137 阅读 · 0 评论 -
Java基础09-Map
1. Map集合1.1 什么是MapMap以按键/数值对的形式存储数据,和数组很类似,在数组中存在的索引,它们本身也是对象。Map 中的集合不能包含重复的键,值可以重复;每个键只能对应一个值1.2 Map常用子类HashMap:存储数据采用的哈希表结构,元素的存取顺序不能保证一致。由于要保证键的唯一、不重复,需要重写键的hashCode()方法、equals()方法。LinkedHashMap:HashMap下有个子类LinkedHashMap,存储数据采用的哈希表结构+链表结构。通过原创 2021-03-03 22:09:24 · 121 阅读 · 1 评论 -
Java基础08-数据结构、List、Set、Collections
1. 数据结构1.1 什么是数据结构数据 data 结构(structure)是一门研究组织数据方式的学科,有了编程语言也就有了数据结构.学好数据结构可以编写出更加漂亮,更加有效率的代码。1.2 数据结构和算法的关系程序 = 数据结构 + 算法数据结构是算法的基础, 换言之,想要学好算法,需要把数据结构学到位。1.3 常见的数据结构数据存储的常用结构有:栈、队列、数组、链表和红黑树。我们分别来简单的了解一下:(之后我会更新韩顺平的数据结构)1.3.1 栈栈:stack,又称堆栈,它是原创 2021-02-27 21:29:36 · 147 阅读 · 0 评论 -
Java基础07-Collection、Iterator迭代器、泛型
1. Collection集合1.1 什么是集合集合:集合是java中提供的一种容器,可以用来存储多个数据。集合和数组既然都是容器,它们有啥区别呢?数组的长度是固定的。集合的长度是可变的。数组中存储的是同一类型的元素,可以存储基本数据类型值。集合存储的都是对象。而且对象的类型可以不一致。在开发中一般当对象多的时候,使用集合进行存储。1.2 集合框架集合按照其存储结构可以分为两大类,分别是单列集合java.util.Collection和双列集合java.util.Map。Coll原创 2021-02-27 00:44:40 · 146 阅读 · 0 评论 -
Java基础06-final、访问修饰符、内部类、引用类型用法总结
1. final关键字1.1 什么是final用于修饰不可改变内容。1.2 使用final特点final: 不可改变。可以用于修饰类、方法和变量。类:被修饰的类,不能被继承。方法:被修饰的方法,不能被重写。变量:被修饰的变量,不能被重新赋值。1.3 final使用方式修饰类格式如下:final class 类名 {}修饰方法格式如下:修饰符 final 返回值类型 方法名(参数列表){//方法体}重写被 final 修饰的方法,编译时就会报错。修饰变量1. 局部变原创 2021-02-25 21:46:22 · 172 阅读 · 0 评论 -
Java基础05-接口、多态
1.接口1.1什么是接口接口,是Java语言中一种引用类型,是方法的集合。接口的定义,它与定义类方式相似,但是使用interface关键字。它也会被编译成.class文件,但一定要明确它并不是类,而是另外一种引用数据类型。引用数据类型:数组,类,接口。接口的使用,它不能创建对象,但是可以被实现( implements ,类似于被继承)。一个实现接口的类(可以看做是接口的子类),需要实现接口中所有的抽象方法,创建该类对象,就可以调用方法了,否则它必须是一个抽象类。1.2 定义格式publi原创 2021-02-24 21:27:35 · 156 阅读 · 0 评论 -
Java基础04-继承、super、this、抽象类
1.继承1.1什么是继承多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要继承那一个类即可。其中,多个类可以称为子类,单独那一个类称为父类、超类(superclass)或者基类。继承:就是子类继承父类的属性和行为,使得子类对象具有与父类相同的属性、相同的行为。子类可以直接访问父类中的非私有的属性和行为。1.2继承的格式通过 extends 关键字,可以声明一个子类继承另外一个父类,定义格式如下:class 父类 {...}class原创 2021-02-20 23:03:10 · 157 阅读 · 1 评论 -
Java基础03-常用API(二)
1.Object类默认地址比较对象内容比较1.4 Objects类第二章 日期时间类2.1 Date类概述常用方法2.2 DateFormat类构造方法格式规则常用方法format方法parse方法2.3 练习2.4 Calendar类概念获取方式常用方法get/set方法add方法getTime方法第三章 System类3.1 currentTimeMillis方法练习3.2 arraycopy方法练习第四章 StringBuilder类4.1 字符串拼接问题4.2 StringBuilder概述4.3原创 2021-02-20 21:13:11 · 133 阅读 · 0 评论 -
Java基础02-常用API(一)
1.Scanner类1.1 什么是Scanner类一个可以解析基本类型和字符串的简单文本扫描器。 例如,以下代码使用户能够从 System.in 中读取一个数:Scanner sc = new Scanner(System.in);int i = sc.nextInt();备注:System.in 系统输入指的是通过键盘录入数据。1.2 Scanner使用//1. 导包import java.util.Scanner;public class Demo01_Scanner {pub原创 2021-02-19 23:12:04 · 129 阅读 · 0 评论 -
Java基础01-注释、标识符、基础数据类型、变量、运算符、流程控制、方法数组等
1.什么是JavaJava是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程 。2.java的特性和优势1.简单性2.面向对象3.可移植性(平台无关性)4.高性能5.分布式6.动态性7.多线程8.健壮性9.安全性3.Java的三大版本JavaSE :标准版(桌面程序,控制台开原创 2021-02-19 21:54:02 · 381 阅读 · 3 评论 -
Thread.sleep()和TimeUnit.SECONDS.sleep()的区别
TimeUnit是什么?TimeUnit是java.util.concurrent包下面的一个类,TimeUnit提供了可读性更好的线程暂停操作。首先来看源码,原来是对Thread.sleep方法的包装,实现是一样的,只是多了时间单位转换和验证,然而TimeUnit枚举成员的方法却提供更好的可读性public void sleep(long timeout) throws InterruptedException { if (timeout > 0) { long ms转载 2020-07-29 15:05:19 · 635 阅读 · 0 评论 -
JAVA中的委托事件模型
Java自JDK1.1之后采用委托事件模型(delegation event model)。委托事件模型是进行图形用户界面设计的核心,在了解该模型之前,先介绍几个基本概念。1、 事件 事件(event)是指一个状态的改变,或者一个活动的发生。 例如,用户点击窗口关闭按钮,发生窗口关闭事件;用户单击一个按钮,产生动作事件。2、 事件源 发生事件的组件称为事件源。 例如,用户单击窗口关闭按钮是在窗口上发生的事件,所以窗口为事件源;用户单击按钮产生 的动作事件是在按钮上发生的,所以按钮为转载 2020-05-22 10:23:29 · 1715 阅读 · 0 评论