Java基础
Java基本语法、集合、泛型、IO流代码的编写
codfishXY
机械转码
展开
-
Java基础-复习12-多线程
一. 前言1. 几个基本概念进程和线程进程:进程用来描述程序的执行过程,是资源分配的最小单位线程:线程建立在进程上,是CPU调度的最小单位,线程可设置优先级同步和异步同步:方法调用一旦开始,就必须等待调用返回后,才能继续后续的代码异步:方法调用一开始,其执行过程被分配到另一线程中进行,同时主线程可以继续后续的代码并发和并行并发:单核 cpu 处理多任务(一个人同时处理很多事情)并行:多核 cpu 执行多任务(多个人同时执行很多事情)线程的生命周期新建:创建线程对象,并保原创 2020-09-16 22:51:35 · 172 阅读 · 0 评论 -
Java基础-复习11-注解
一. 概述1. 什么是注解(java.lang.annotation)?注解提供了一种安全的类似注释的机制,用来将任何的信息或元数据(metadata)与程序元素(类、方法、成员变量等)进行关联,注解可以让一些工具在编译、运行时进行解析和使用,起到说明、配置的功能。注解不会影响代码的实际逻辑,仅仅起到辅助性的作用。注解本质是一个继承了Annotation 的特殊接口,其具体实现类是Java 运行时生成的动态代理类。而我们通过反射获取注解时,返回的是Java 运行时生成的动态代理对象 $Proxy1。通原创 2020-09-08 14:47:59 · 180 阅读 · 0 评论 -
Java基础-复习10-IO流
一. 概述1. 流(stream)的概念流:流就是有能力产出数据或接收数据的对象,本质是数据传输,作用是在数据源和程序间建立传送通道2. IO流的分类按数据流向分为输入流:外部(磁盘)数据读入到程序(内存)中输出流:程序数据输出到磁盘中按数据单位分为字节流:按字节操作数据,一般处理非文本文件(jpg、mp4、mp3、doc、ppt)字符流:按字符操作数据,一般处理文本文件(txt、java、c、cpp)按流的功能分为节点流:直接在数据源于程序间进行传输的流处理流:对已存原创 2020-09-06 00:16:23 · 168 阅读 · 0 评论 -
Java基础-复习09-泛型
一. 概述1. 什么是泛型?泛型:将还未知的类型参数化(类型形参)并用大写字母作为临时标识,然后在调用时再传入具体的类型(类型实参)。泛型可以用在类、接口和方法中,分别被称为泛型类、泛型接口、泛型方法。2. 为什么引入泛型?集合容器类在设计阶段/声明阶段不能确定这个容器到底实际存的是什么类型的对象,这个时候元素的类型不确定,因此把元素的类型设计成一个类型参数:泛型(JDK1.5引入)。Collection< E >,List< E >,ArrayList< E >原创 2020-09-01 15:50:23 · 219 阅读 · 0 评论 -
Java基础-复习08-反射
一. 概述1. 什么是反射?每个类都有一个 Class 对象,包含了与类有关的信息。当编译一个新类时,会产生一个同名的 .class 文件,该文件内容保存着 Class 对象。通过反射,可以在运行时动态地创建编译时未知的对象(编译期间该类的 .class 不存在),从而在运行时加载类、调用方法、访问属性(即使声明为 private)。2. 反射的用途反射最重要的用途就是开发各种通用框架。(框架 = 注解 + 反射 + 设计模式)很多框架(比如 Spring)都是配置化的(比如通过XML 文件配置原创 2020-08-31 14:44:14 · 188 阅读 · 0 评论 -
Java基础-HashMap详解
1. 简介HashMap的定义public class HashMap<K,V> extends AbstractMap<K,V> implements Map<K,V>, Cloneable, Serializable2. 存储结构HashMap的数据结构:数组 + 单链表HashMap的本质:一个存储Entry类对象的数组 + 多个单链表HashMap的主干是一个Entry(JDK1.8改为Node)数组,代码如下:transient原创 2020-08-24 20:12:31 · 334 阅读 · 0 评论 -
Java基础-复习07-集合
一. 概述集合、数组都对多个数据进行存储操作的结构,称为Java容器集合解决了数组长度不可修改、元素增删改查效率低、不能满足无序不可重复元素等缺点Java集合分为Collection和Map两种体系Collection接口:单列数据,定义存取一组对象的方法的集合Map接口:双列数据,保存具有映射关系的"key-value对"的集合二. Collection1. Collection接口Collection接口的常用方法:add(E e)-----------------------原创 2020-08-23 12:59:31 · 180 阅读 · 0 评论 -
Java基础-复习06-异常
一. 概述Java异常是一个描述在代码段中发生异常的对象,当发生异常情况时,一个代表该异常的对象被创建并且在导致该异常的方法中被抛出,而该方法可以选择自己处理异常或者传递该异常。Error:由Java虚拟机生成并抛出,大多数错误与代码程序的操作无关Exception:包含运行时异常和非运行时异常,尽可能在程序中处理这些异常二. 处理异常1. try-catch-finallytry{ //可能出现异常的代码}catch(异常类型1 变量名1){ //处理异常的方式1}catch原创 2020-08-19 13:28:06 · 173 阅读 · 0 评论 -
Java基础-复习05-继承
一. 访问权限default:同一包内可见private:同一类内可见public:所有类可见protected:同一包内的类和所有子类可见二. 抽象类和接口1. 抽象类(abstract)抽象类和抽象方法都使用abstract关键字声明一个类中包含抽象方法,那么这个类必须声明为抽象类抽象类不能被实例化,只能被继承2. 接口(interface)接口中的方法被隐式的指定为 public abstract接口中的属性被隐式的定义为 public static final接口原创 2020-08-18 13:56:58 · 139 阅读 · 0 评论 -
Java基础-复习04-Object通用方法
一. 概览public boolean equals(Object obj);public native int hashcode();public String toString();protected void finalize() throws Throwable{}protected native Object clone() throws CloneNotSupportedExceptionpublic final native Class<?> getClass原创 2020-08-18 00:04:13 · 143 阅读 · 0 评论 -
Java基础-复习03-关键字
一、this和super1. thisthis指 当前对象本身 或 当前正在创建的对象this.属性 和 this.方法 调用时可以省略this,当方法的形参和类属性同名时,this不可省略this(形参) 调用本类中相同参数形式的另一构造函数,必须为构造函数中的第一条语句2. supersuper指向离自己最近的一个父类,通常可以省略当子类和父类有同名属性,为了指定调用了父类的属性,不可省略super当子类和父类有同名方法,为了指定重写了父类的方法,不可省略supersuper(形原创 2020-08-17 11:53:00 · 134 阅读 · 0 评论 -
Java基础-复习02-String
一、概述(java.lang.String类)public final class String,String类被声明为final,因此不可变、不可被继承Java 8中,String内部使用char[]数组存储数据public final char[] value;Java 9之后,使用byte[]数组存储数据,并用coder标识编码方式public final byte[] value;public final coder;问题1:String为什么定义为final,有什么好处?原创 2020-08-16 22:47:17 · 169 阅读 · 0 评论 -
Java基础-复习01-数据类型
一. 基本数据类型byte - 1 - 8bit - 0short - 2 - 16bit - 0int - 4 - 32bit - 0long - 8 -64bit - 0Lfloat - 4 -32bit - 0.0fdouble - 8 - 64bit - 0.0dchar - 2 -16bit - \u0000boolean - true(1) or false(0) - 1bit - false问题1:Java中boolean类型占用多少个字节?boolean只有true或原创 2020-08-16 00:35:58 · 159 阅读 · 0 评论