Java 反射

Java 反射就是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性;并且能改变它的属性。这也是 Java 被视为动态(或准动态)语言的一个关键性质。

Java 注解

Java 注解(Annotation)又称 Java 标注,是 JDK5.0 引入的一种注释机制。注解就是代码中的特殊标记,这些标记可以在编译、类加载、运行时被读取,从而做相对应的处理。注解跟注释很像,区别是注释是给人看的;而注解是给程序看的,它可以被编译器读取。Java 语言中的类、方法、变量、参数和包等都可以被标注。

Java JVM

JVM 全称是 Java Virtual Machine(Java 虚拟机),Java 虚拟机是一种程序虚拟机(相对操作系统虚拟机),Java 的运行环境实现跨平台。JVM 被分为三个主要的子系统 类加载器子系统、运行时数据区、执行引擎。类加载器子系统 Java 的动态类加载功能是由类加载器子系统处理。运行时数据区 分为 5 个主要组件 方法区、堆区、栈区、PC 寄存器、本地方法栈。执行引擎 分配给运行时数据区的字节码将由执行引擎执行。

Java GUI 图形用户界面

GUI(Graphic User Interface)图形用户界面。当按钮被点击时,就会触发 ActionEvent 事件,actionPerformed 方法就会被执行。一般说来在写监听器的时候,会实现 MouseListener。但是 MouseListener 里面有很多方法实际上都没有用到,比如 mouseReleased ,mousePressed,mouseExited 等等。

Java Regex 正则表达式

正则表达式,别称规则表达式,英语:Regular Expression,在代码中常简写为 regex、regexp 或 RE,是计算机科学的一个概念。在计算机科学中,是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。在很多文本编辑器或其他工具里,正则表达式通常被用来检索和/或替换那些符合某个模式的文本内容。

Java Lambda 表达式

与匿名类概念相比较,Lambda 其实就是匿名方法,这是一种把方法作为参数进行传递的编程思想。Java 会在背后,悄悄的,把这些都还原成匿名类方式。引入 Lambda 表达式,会使得代码更加紧凑,而不是各种接口和匿名类到处飞。Lambda 比较适合用在简短的业务代码中,并不适合用在复杂的系统中,会加大维护成本。

Java JDBC 数据库连接

JDBC(Java Data Base Connection)是通过 Java 访问数据库。访问 MySQL 数据库需要用到第三方的类,这些第三方的类,都被压缩在一个叫做 Jar 的文件里。为了代码能够使用第三方的类,需要为项目导入 MySQL 的专用 Jar 包。CRUD 是最常见的数据库操作,即增删改查。

Java 网络编程

在网络中每台计算机都必须有一个的 IP 地址。32 位,4 个字节,常用点分十进制的格式表示,例如:192.168.1.100。127.0.0.1 是固定 ip 地址,代表当前计算机,相当于面向对象里的 this。两台计算机进行连接,总有一台服务器,一台客户端。服务器和客户端之间的通信通过端口进行。

Java 多线程

多线程即在同一时间,可以做多件事情。进程是指在系统中正在运行的一个应用程序。每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内。线程是进程中执行任务的基本执行单元。一个进程要执行任务,必须得有线程,一个进程(程序)的所有任务都在线程中执行。一个进程可以开启多条线程,每条线程可以并发(同时)执行不同的任务。

Java 泛型

泛型是在容器后面添加 Type。Type 可以是类,抽象类,接口。表示这种容器只能存放指定的数据类型,别的类型(除子类外)是放不进去的,获取的时候也不需要进行转型。子类对象转父类对象是可以成功的。子类泛型不可以转换为父类泛型。

Java 异常处理

导致程序的正常流程被中断的事件,叫做异常。比如要打开某个文件,这个文件是有可能不存在的。Java 中通过 new FileInputStream(f) 试图打开某文件,就有可能抛出文件不存在异常 FileNotFoundException。如果不处理该异常,就会有编译错误。

Java I/O 流

Java 中的 IO 分 3 类, BIO 同步阻塞 IO、NIO 同步非阻塞 IO、AIO异步非阻塞 IO,也叫 NIO2。BIO 方式适用于连接数目比较小且固定的架构。这种方式对服务器资源要求比较高,并发局限于应用中,JDK1.4 以前的唯一选择,但程序直观简单易理解。NIO 方式适用于连接数目多且连接比较短(轻操作)的架构。AIO 方式使用于连接数目多且连接比较长(重操作)的架构。

Java 集合

在 Java Collections Framework 中,不同类型的集合使用不同类型的数据结构以不同的方式存储它们的元素。一些集合对它们的元素有排序,有些没有。集合提供了一个迭代器来遍历其所有元素。迭代器是一次性对象。我们不能重置迭代器,它不能被重用。

Java 日期

所有的数据类型,无论是整数,布尔,浮点数还是字符串,最后都需要以数字的形式表现出来。日期类型也不例外,换句话说,一个日期,比如 2019 年 10 月 1 日,在计算机里,会用一个数字来代替。那么最特殊的一个数字就是零。零这个数字,就代表 Java 中的时间原点,其对应的日期是 1970 年 1 月 1 日 0 点 0 分 0 秒 。