随笔分类 -  Java 基础知识

Java 是一门面向对象的编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。
摘要:在企业级 Java 应用开发中,Java 程序运行过程中会经常遇到内存不足、内存泄露、线程死锁、CPU 高占用等问题。部分问题在日常开发中可能会被忽视或被别变通的方法绕开(比如重启服务或者调大内存),而不被深究问题的根源,如何理解并解决这些问题需要我们学会使用一些 JVM 性能调优监控工具。本文将简 阅读全文
posted @ 2023-02-20 17:28 垄山小站 阅读(146) 评论(0) 推荐(0) 编辑
摘要:本文上接 "Java基础知识(11)- Java 面向对象(三)",补充以下内容。 1. Effectively final Java 中局部内部类和匿名内部类访问的局部变量必须由 final 修饰,以保证内部类和外部类的数据一致性。从 Java 8 开始,可以不加 final 修饰符,由系统默认添 阅读全文
posted @ 2022-03-24 11:29 垄山小站 阅读(281) 评论(0) 推荐(0) 编辑
摘要:1. JVM 简介 Java 平台由 Java 虚拟机(Java Virtual Machine,JVM)和 Java 应用编程接口(Application Programming Interface,API)构成。 Java 应用编程接口是一套独立于操作系统的标准接口,可分为基本部分和扩展部分。在 阅读全文
posted @ 2022-03-13 16:14 垄山小站 阅读(324) 评论(0) 推荐(0) 编辑
摘要:1. 通过反射执行方法(访问方法) 要动态获取一个对象方法的信息,首先需要通过下列方法之一创建一个 Method 类型的对象或者数组。 getMethods() getMethods(String name,Class<?> …parameterTypes) getDeclaredMethods() 阅读全文
posted @ 2022-03-02 17:45 垄山小站 阅读(167) 评论(0) 推荐(0) 编辑
摘要:Java 反射机制 (Reflection)是 Java 语言的一个重要特性,在服务器程序和中间件程序中广泛运用。在服务器端,往往需要根据客户的请求,动态调用某一个对象的特定方法。 在 ORM 中间件的实现中,运用 Java 反射机制可以读取任意一个 JavaBean 的所有属性,或者给这些属性赋值 阅读全文
posted @ 2022-03-02 17:38 垄山小站 阅读(203) 评论(0) 推荐(1) 编辑
摘要:1. Java 集合简介 Java 的初期版本提供了 Dictionary, Vector, Stack, 和 Properties 等类用来存储和操作对象组。 这些类的功能很有用,但是它们缺少一个核心的、统一的主题(或基类),相互之间缺乏互操作性。比如,使用 Vector 类和使用 Propert 阅读全文
posted @ 2022-03-01 13:23 垄山小站 阅读(134) 评论(0) 推荐(0) 编辑
摘要:1. 泛型 (Generics) Java 泛型(generics)是 JDK 5 中引入的一个新特性, 泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型。 泛型本质上是参数化类型,就是将类型由原来的具体的类型参数化,类似于方法中的变量参数,此时类型也定义成参数形式(可以称 阅读全文
posted @ 2022-02-28 20:26 垄山小站 阅读(874) 评论(0) 推荐(1) 编辑
摘要:Java 注解是 JDK5 引入的一种注释机制,或者说是一种特殊的标签。Java 中的类、方法、变量、属性和包等都可以被注解。注解以 @ 符号开头,例如 @Override 注解。 @Override public String toString() { return "Java注解简介"; }注解 阅读全文
posted @ 2022-02-28 11:51 垄山小站 阅读(174) 评论(0) 推荐(0) 编辑
摘要:1. 线程控制 1) 启动线程 通过调用 Thread 类的 start 方法来启动一个线程,这时此线程是处于就绪状态,并没有运行。 得到 CPU 时间片后,线程就开始自动执行 run 方法,run 方法被称为线程体,它包含了要执行的这个线程的内容,run方法运行结束,此线程随即终止。 run 方法 阅读全文
posted @ 2022-02-27 14:04 垄山小站 阅读(44) 评论(0) 推荐(0) 编辑
摘要:线程在操作系统中是相互独立的,同一进程下相互独立的线程,如果不经过特殊的处理就不能成为一个整体来处理复杂的业务。线程间的通信就是成为整体的必用方案之一,可以说,使线程间进行通信后,系统之间的交互性会更强大,在大大提高CPU利用率的同时,还会使程序员对个线程任务在处理的过程中进行更有效的把控与监督。线 阅读全文
posted @ 2022-02-26 18:57 垄山小站 阅读(65) 评论(0) 推荐(0) 编辑
摘要:线程的同步是保证多线程安全访问竞争资源的一种手段。Java 多个线程同时操作一个可共享的资源变量时(如数据的增删改查),各线程操作同一资源的顺序有一定的随机性,可能会导致数据不准确,或在写操作的时候产生冲突。常用的线程同步方法:volatile关键字、synchronized关键字、Reenrean 阅读全文
posted @ 2022-02-25 18:10 垄山小站 阅读(54) 评论(0) 推荐(0) 编辑
摘要:Java 给多线程编程提供了内置的支持。 一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。 多线程是多任务的一种特别的形式,但多线程使用了更小的资源开销。 进程:一个进程包括由操作系统分配的内存空间,包含一个或多个线程。一个线程不能独立的存在,它必须 阅读全文
posted @ 2022-02-25 17:56 垄山小站 阅读(71) 评论(0) 推荐(0) 编辑
摘要:1. 内部类 (Inner) 在类内部可定义属性和方法,且在类内部也可以定义另一个类。如果在类 Outer 的内部再定义一个类 Inner,此时类 Inner 就称为内部类(或称为嵌套类),而类 Outer 则称为外部类(或称为宿主类)。 内部类是一个独立的类,在编译之后内部类会被编译成独立的 .c 阅读全文
posted @ 2022-02-23 16:47 垄山小站 阅读(327) 评论(0) 推荐(0) 编辑
摘要:1. 抽象类 (Abstract) 在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,那么这样的类称为抽象类。 使用 abstract 修饰符来表示抽象方法和抽象类。 这里创建一个表示图形的抽象类 Sh 阅读全文
posted @ 2022-02-21 13:50 垄山小站 阅读(192) 评论(0) 推荐(0) 编辑
摘要:1. 继承(Extends) 1) 继承的概念 Java 中的继承就是在已有类的基础上进行扩展,从而产生新的类。已有的类称为父类、基类或超类,而新产生的类称为子类或派生类。 (1) 继承格式: class Human { } class Male extends Human { } class Bo 阅读全文
posted @ 2022-02-21 12:14 垄山小站 阅读(360) 评论(0) 推荐(0) 编辑
摘要:1. 自动资源管理(Automatic Resource Management) 在 try catch finally 语句使用文件资源,需要在 finally 块中关闭文件资源,代码如下: 1 public static void main(String[] args) { 2 FileInpu 阅读全文
posted @ 2022-02-21 11:49 垄山小站 阅读(111) 评论(0) 推荐(0) 编辑
摘要:Java 中的异常又称为例外,程序运行时发生的不被期望的事件,它阻止了程序按照程序员的预期正常执行。 为了能够及时有效地处理程序中的运行错误,必须使用异常类,这可以让程序具有极好的容错性且更加健壮。 异常发生的原因有很多,通常包含以下几类: (1) 编写的程序代码中的错误所产生的异常,例如空指针异常 阅读全文
posted @ 2022-02-21 11:39 垄山小站 阅读(1185) 评论(0) 推荐(0) 编辑
摘要:1. Java IO读写 Java.io 包几乎包含了所有操作输入、输出需要的类。所有这些流类代表了输入源和输出目标。 Java.io 包中的流支持很多种格式,比如:基本类型、对象、本地化字符集等等。 一个流可以理解为一个数据的序列。输入流表示从一个源读取数据,输出流表示向一个目标写数据。 Java 阅读全文
posted @ 2022-02-21 11:27 垄山小站 阅读(232) 评论(0) 推荐(0) 编辑
摘要:1. Java 数组 数组对于每一门编程语言来说都是重要的数据结构之一,当然不同语言对数组的实现及处理也不尽相同。 Java 语言中提供的数组是用来存储固定大小的同类型元素。 1) 声明数组变量 首先必须声明数组变量,才能在程序中使用数组。下面是声明数组变量的语法: dataType[] array 阅读全文
posted @ 2022-02-21 11:19 垄山小站 阅读(369) 评论(0) 推荐(0) 编辑
摘要:1. Java 循环语句 Java 有三种主要的循环结构:while循环、 do … while循环、for循环 在Java5中引入了一种主要用于数组的增强型for循环。 1) while 循环 while是最基本的循环,它的结构为: while ( 布尔表达式 ) { // 代码 } 只要布尔表达 阅读全文
posted @ 2022-02-21 09:58 垄山小站 阅读(260) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示