【Java 集合】 ArrayList
【Java 集合】 ArrayListMetadatatitle: 【Java 集合】 ArrayList
date: 2022-12-14 14:21
tags:
- 行动阶段/完成
- 主题场景/编程
- 笔记空间/KnowladgeSpace/ProgramSpace/BasicsSpace
- 细化主题/Java/集合
categories:
- Java
keywords:
- Java/集合
description: 集合
概述ArrayList实现了List接口,是顺序容器,即元素存放的数据与放进去的顺序相同,允许放入null元素,底层通过数组实现。除该类未实现同步外,其余跟Vector大致相同。每个ArrayList都有一个容量(capacity),表示底层数组的实际大小,容器内存储元素的个数不能多于当前容量。当向容器中添加元素时,如果容量不足,容器会自动增大底层数组的大小。前面已经提过,Java泛型只是编译器提供的语法糖,所以这里的数组是一个Object数组,以便能够容纳任何类型的对象。
size(), isEmpty(), get(), ...
【Java 基础】 注解
【Java 基础】 注解Metadatatitle: 【Java 基础】 注解
date: 2022-12-14 14:13
tags:
- 行动阶段/完成
- 主题场景/编程
- 笔记空间/KnowladgeSpace/ProgramSpace/BasicsSpace
- 细化主题/Java/基础
- 细化主题/注解
categories:
- Java
keywords:
- Java/基础
- 注解
description: 注解
作用
生成文档,通过代码里标识的元数据生成javadoc文档。
编译检查,通过代码里标识的元数据让编译器在编译期间进行检查验证。
编译时动态处理,编译时通过代码里标识的元数据动态处理,例如动态生成代码。
运行时动态处理,运行时通过代码里标识的元数据动态处理,例如使用反射注入实例。
分类
Java自带的标准注解,包括@Override、@Deprecated和@SuppressWarnings,分别用于标明重写某个方法、标明某个类或方法过时、标明要忽略的警告,用这些注解标明后编译器就会进行检查。
元注解,元注解是用于定 ...
【Java 基础】 注解
【Java 基础】 注解Metadatatitle: 【Java 基础】 注解
date: 2022-12-14 14:13
tags:
- 行动阶段/完成
- 主题场景/编程
- 笔记空间/KnowladgeSpace/ProgramSpace/BasicsSpace
- 细化主题/Java/基础
- 细化主题/注解
categories:
- Java
keywords:
- Java/基础
- 注解
description: 注解
作用
生成文档,通过代码里标识的元数据生成javadoc文档。
编译检查,通过代码里标识的元数据让编译器在编译期间进行检查验证。
编译时动态处理,编译时通过代码里标识的元数据动态处理,例如动态生成代码。
运行时动态处理,运行时通过代码里标识的元数据动态处理,例如使用反射注入实例。
分类
Java自带的标准注解,包括@Override、@Deprecated和@SuppressWarnings,分别用于标明重写某个方法、标明某个类或方法过时、标明要忽略的警告,用这些注解标明后编译器就会进行检查。
元注解,元注解是用于定 ...
【Java 基础】 泛型
【Java 基础】 泛型Metadatatitle: 【Java 基础】 泛型
date: 2022-12-14 14:12
tags:
- 行动阶段/完成
- 主题场景/编程
- 笔记空间/KnowladgeSpace/ProgramSpace/BasicsSpace
- 细化主题/Java/基础
- 细化主题/泛型
categories:
- Java
keywords:
- Java/基础
- 泛型
description: 泛型
描述泛型的本质是为了参数化类型。
适用于多种数据类型执行相同的代码(代码复用)
泛型中的类型在使用时指定,不需要强制类型转换(类型安全,编译器会检查类型)
泛型的基本使用泛型类泛型接口泛型方法泛型方法,是在调用方法的时候指明泛型的具体类型。
定义泛型方法语法格式
调用泛型方法语法格式
泛型数组-
小结<?> 无限制通配符
<? extends E> extends 关键字声明了类型的上界,表示参数化的类型可能是所指定的类型,或者是此类型的子类
<? super E> s ...
【Java 基础】 泛型
【Java 基础】 泛型Metadatatitle: 【Java 基础】 泛型
date: 2022-12-14 14:12
tags:
- 行动阶段/完成
- 主题场景/编程
- 笔记空间/KnowladgeSpace/ProgramSpace/BasicsSpace
- 细化主题/Java/基础
- 细化主题/泛型
categories:
- Java
keywords:
- Java/基础
- 泛型
description: 泛型
描述泛型的本质是为了参数化类型。
适用于多种数据类型执行相同的代码(代码复用)
泛型中的类型在使用时指定,不需要强制类型转换(类型安全,编译器会检查类型)
泛型的基本使用泛型类泛型接口泛型方法泛型方法,是在调用方法的时候指明泛型的具体类型。
定义泛型方法语法格式
调用泛型方法语法格式
泛型数组-
小结<?> 无限制通配符
<? extends E> extends 关键字声明了类型的上界,表示参数化的类型可能是所指定的类型,或者是此类型的子类
<? super E> s ...
【Java 基础】 异常
【Java 基础】 异常Metadatatitle: 【Java 基础】 异常
date: 2022-12-14 14:11
tags:
- 行动阶段/完成
- 主题场景/编程
- 笔记空间/KnowladgeSpace/ProgramSpace/BasicsSpace
- 细化主题/Java/基础
- 细化主题/异常
categories:
- Java
keywords:
- Java/基础
- 异常
description: 异常
描述Throwable 可以用来表示任何可以作为异常抛出的类,分为两种: Error 和 Exception。其中 Error 用来表示 JVM 无法处理的错误,Exception 分为两种:
受检异常 : 需要用 try…catch… 语句捕获并进行处理,并且可以从异常中恢复;
非受检异常 : 是程序运行时错误,例如除 0 会引发 Arithmetic Exception,此时程序崩溃并且无法恢复。
异常基础异常关键字
try – 用于监听。将要被监听的代码(可能抛出异常的代码)放在try语句块之内,当try语句 ...
【Java 基础】 异常
【Java 基础】 异常Metadatatitle: 【Java 基础】 异常
date: 2022-12-14 14:11
tags:
- 行动阶段/完成
- 主题场景/编程
- 笔记空间/KnowladgeSpace/ProgramSpace/BasicsSpace
- 细化主题/Java/基础
- 细化主题/异常
categories:
- Java
keywords:
- Java/基础
- 异常
description: 异常
描述Throwable 可以用来表示任何可以作为异常抛出的类,分为两种: Error 和 Exception。其中 Error 用来表示 JVM 无法处理的错误,Exception 分为两种:
受检异常 : 需要用 try…catch… 语句捕获并进行处理,并且可以从异常中恢复;
非受检异常 : 是程序运行时错误,例如除 0 会引发 Arithmetic Exception,此时程序崩溃并且无法恢复。
异常基础异常关键字
try – 用于监听。将要被监听的代码(可能抛出异常的代码)放在try语句块之内,当try语句 ...
【Java 基础】 反射
【Java 基础】 反射Metadatatitle: 【Java 基础】 反射
date: 2022-12-14 14:09
tags:
- 行动阶段/完成
- 主题场景/编程
- 笔记空间/KnowladgeSpace/ProgramSpace/BasicsSpace
- 细化主题/Java/基础
- 细化主题/反射
categories:
- Java
keywords:
- Java/基础
- 反射
description: 反射
基础每个类都有一个 Class 对象,包含了与类有关的信息。当编译一个新类时,会产生一个同名的 .class 文件,该文件内容保存着 Class 对象。
类加载相当于 Class 对象的加载。类在第一次使用时才动态加载到 JVM 中,可以使用 Class.forName(“com.mysql.jdbc.Driver”) 这种方式来控制类的加载,该方法会返回一个 Class 对象。
反射可以提供运行时的类信息,并且这个类可以在运行时才加载进来,甚至在编译时期该类的 .class 不存在也可以加载进来。
Class 和 j ...
【Java 基础】 反射
【Java 基础】 反射Metadatatitle: 【Java 基础】 反射
date: 2022-12-14 14:09
tags:
- 行动阶段/完成
- 主题场景/编程
- 笔记空间/KnowladgeSpace/ProgramSpace/BasicsSpace
- 细化主题/Java/基础
- 细化主题/反射
categories:
- Java
keywords:
- Java/基础
- 反射
description: 反射
基础每个类都有一个 Class 对象,包含了与类有关的信息。当编译一个新类时,会产生一个同名的 .class 文件,该文件内容保存着 Class 对象。
类加载相当于 Class 对象的加载。类在第一次使用时才动态加载到 JVM 中,可以使用 Class.forName(“com.mysql.jdbc.Driver”) 这种方式来控制类的加载,该方法会返回一个 Class 对象。
反射可以提供运行时的类信息,并且这个类可以在运行时才加载进来,甚至在编译时期该类的 .class 不存在也可以加载进来。
Class 和 j ...
【Java 基础】 面向对象
【Java 基础】 面向对象Metadatatitle: 【Java 基础】 面向对象
date: 2022-12-14 14:07
tags:
- 行动阶段/完成
- 主题场景/编程
- 笔记空间/KnowladgeSpace/ProgramSpace/BasicsSpace
- 细化主题/Java/基础
- 细化主题/面向对象
categories:
- Java
keywords:
- Java/基础
- 面向对象
description: 面向对象
三大特性封装利用抽象数据类型将数据和基于数据的操作封装在一起,使其构成一个不可分割的独立实体。数据被保护在抽象数据类型的内部,尽可能地隐藏内部的细节,只保留一些对外接口使之与外部发生联系。用户无需知道对象内部的细节,但可以通过对象对外提供的接口来访问该对象。
优点:
减少耦合: 可以独立地开发、测试、优化、使用、理解和修改
减轻维护的负担: 可以更容易被程序员理解,并且在调试的时候可以不影响其他模块
有效地调节性能: 可以通过剖析确定哪些模块影响了系统的性能
提高软件的可重用性
降低了构建大型系统 ...