网站建设的步骤图手机靓号网站制作
2026/2/20 3:48:28 网站建设 项目流程
网站建设的步骤图,手机靓号网站制作,百度网站流量统计,wordpress 从哪儿登录文章目录一 基础概念1 什么是方法重写2 什么是接口接口#xff1f;3 什么是抽象类#xff1f;什么是抽象方法#xff1f;4常见异常类及继承关系Java异常体系完整对比表5常用API类整理#xff08;表格#xff09;一、字符串相关类二、集合框架类2.1 List接口实现类2.2 Set接…文章目录一 基础概念1 什么是方法重写2 什么是接口接口3 什么是抽象类什么是抽象方法4常见异常类及继承关系Java异常体系完整对比表5常用API类整理表格一、字符串相关类二、集合框架类2.1 List接口实现类2.2 Set接口实现类2.3 Map接口实现类三、输入输出类I/O3.1 字节流3.2 字符流3.3 其他I/O类四、日期时间类Java 8五、数学工具类六、系统相关类七、包装类Wrapper Classes八、并发工具类Java 56 集合整理ListArrayListLinkedListHashsetHashMap一、Java主要集合类核心特性对比二、ArrayList vs LinkedList 详细对比三、HashSet vs HashMap 详细对比7 权限修饰符关键字8 instanceof关键字二、面向对象的三大特性1 封装Encapsulation2 继承Inheritance3 多态Polymorphism一 基础概念1 什么是方法重写在Java中方法重写Override 是指子类重新定义父类中已有的方法以提供特定的实现。这是实现运行时多态的关键机制。2 什么是接口接口接口是Java中一种完全抽象的类它定义了一组规范或契约但不提供具体实现。接口指定了做什么而不关心怎么做。3 什么是抽象类什么是抽象方法抽象类Abstract Class抽象类是不能被实例化的类用于被其他类继承。它介于普通类和接口之间可以包含抽象方法没有实现的方法也可以包含具体方法有实现的方法可以有成员变量、构造方法、静态方法等抽象方法Abstract Method抽象方法是只有声明而没有实现的方法使用 abstract 关键字修饰没有方法体没有 {}必须在抽象类或接口中声明子类必须重写所有抽象方法除非子类也是抽象类4常见异常类及继承关系markdownJava异常体系完整对比表异常类别类名继承关系检查类型常见触发场景中文名称顶级父类Throwable所有异常的根类-所有异常的超类可抛出的⬇️ 错误ErrorThrowable → Error非检查异常严重系统错误程序无法恢复错误↳ 虚拟机错误VirtualMachineErrorError → VirtualMachineError非检查异常虚拟机内部错误虚拟机错误↳↳ 内存错误OutOfMemoryErrorVirtualMachineError → OutOfMemoryError非检查异常堆内存耗尽内存溢出错误↳↳ 栈错误StackOverflowErrorVirtualMachineError → StackOverflowError非检查异常方法调用栈溢出栈溢出错误↳ 链接错误LinkageErrorError → LinkageError非检查异常类加载链接问题链接错误↳↳ 类定义错误NoClassDefFoundErrorLinkageError → NoClassDefFoundError非检查异常编译时有类运行时找不到类定义未找到错误⬇️ 异常ExceptionThrowable → Exception-所有异常的超类异常↳ 运行时异常RuntimeExceptionException → RuntimeException非检查异常编程错误可避免运行时异常↳↳ 空指针异常NullPointerExceptionRuntimeException → NullPointerException非检查异常调用null对象的方法或属性空指针异常↳↳ 数组越界异常ArrayIndexOutOfBoundsExceptionRuntimeException → IndexOutOfBoundsException → …非检查异常访问不存在的数组索引数组索引越界异常↳↳ 类型转换异常ClassCastExceptionRuntimeException → ClassCastException非检查异常错误的类型转换类转换异常↳↳ 算术异常ArithmeticExceptionRuntimeException → ArithmeticException非检查异常除数为零等算术错误算术异常↳↳ 参数异常IllegalArgumentExceptionRuntimeException → IllegalArgumentException非检查异常方法参数不合法非法参数异常↳↳↳ 数字格式异常NumberFormatExceptionIllegalArgumentException → NumberFormatException非检查异常字符串转数字格式错误数字格式异常↳↳ 状态异常IllegalStateExceptionRuntimeException → IllegalStateException非检查异常对象状态不正确非法状态异常↳↳ 不支持操作异常UnsupportedOperationExceptionRuntimeException → UnsupportedOperationException非检查异常不支持的方法调用不支持的操作异常↳ 受检异常Checked ExceptionException → [各种受检异常]检查异常外部因素导致必须处理受检异常↳↳ IO异常IOExceptionException → IOException检查异常输入输出操作失败IO异常↳↳↳ 文件未找到异常FileNotFoundExceptionIOException → FileNotFoundException检查异常文件不存在文件未找到异常↳↳↳ 文件结束异常EOFExceptionIOException → EOFException检查异常读取到文件结尾文件结束异常↳↳ SQL异常SQLExceptionException → SQLException检查异常数据库操作失败SQL异常↳↳ 类未找到异常ClassNotFoundExceptionException → ClassNotFoundException检查异常类加载时找不到类类未找到异常↳↳ 中断异常InterruptedExceptionException → InterruptedException检查异常线程被中断中断异常↳↳ 解析异常ParseExceptionException → ParseException检查异常解析字符串失败解析异常5常用API类整理表格一、字符串相关类类名所在包主要用途特性常用方法Stringjava.lang不可变字符串线程安全不可变length(), charAt(), substring(), indexOf(), equals(), split(), replace()StringBuilderjava.lang可变字符串非线程安全性能高append(), insert(), delete(), reverse(), toString()StringBufferjava.lang可变字符串线程安全性能稍低同StringBuilder但方法加synchronizedStringTokenizerjava.util字符串分割已过时推荐用String.split()hasMoreTokens(), nextToken()二、集合框架类2.1 List接口实现类类名特性使用场景时间复杂度ArrayList基于数组动态扩容随机访问频繁查/改: O(1)增/删: O(n)LinkedList基于双向链表增删频繁队列操作查: O(n)增/删: O(1)Vector线程安全的ArrayList多线程环境已过时同ArrayList但方法同步CopyOnWriteArrayList写时复制线程安全读多写少的并发场景写时复制整个数组2.2 Set接口实现类类名特性实现原理使用场景HashSet无序不重复基于HashMap快速去重不关心顺序LinkedHashSet按插入顺序基于LinkedHashMap需要保持插入顺序TreeSet有序可排序基于红黑树需要自然排序或自定义排序2.3 Map接口实现类类名特性实现原理使用场景HashMap键值对无序数组链表/红黑树最常用的Map实现LinkedHashMap按插入/访问顺序基于HashMap双向链表需要保持顺序TreeMap按键排序红黑树需要按键排序Hashtable线程安全数组链表已过时多线程被ConcurrentHashMap替代ConcurrentHashMap线程安全分段锁分段数组链表/红黑树高并发场景三、输入输出类I/O3.1 字节流类名用途父类常用方法FileInputStream读取文件字节InputStreamread(), available(), close()FileOutputStream写入文件字节OutputStreamwrite(), flush(), close()BufferedInputStream缓冲字节输入流FilterInputStream提供缓冲功能BufferedOutputStream缓冲字节输出流FilterOutputStream提供缓冲功能3.2 字符流类名用途父类常用方法FileReader读取文件字符InputStreamReaderread(), ready(), close()FileWriter写入文件字符OutputStreamWriterwrite(), flush(), close()BufferedReader缓冲字符输入流ReaderreadLine(), read()BufferedWriter缓冲字符输出流Writerwrite(), newLine(), flush()3.3 其他I/O类类名用途说明File文件/目录操作创建、删除、重命名文件/目录RandomAccessFile随机访问文件可读写任意位置Scanner解析基本类型和字符串从输入流读取数据PrintStream格式化输出System.out就是PrintStream四、日期时间类Java 8类名包用途不可变性LocalDatejava.time日期年月日是LocalTimejava.time时间时分秒是LocalDateTimejava.time日期时间是ZonedDateTimejava.time带时区的日期时间是Instantjava.time时间戳1970-01-01至今是Durationjava.time时间间隔秒/纳秒是Periodjava.time日期间隔年/月/日是DateTimeFormatterjava.time.format日期时间格式化是注意旧版日期类Date、Calendar、SimpleDateFormat已过时存在线程安全问题五、数学工具类类名包主要用途常用方法/字段Mathjava.lang数学运算abs(), sqrt(), pow(), random(), PI, ERandomjava.util随机数生成nextInt(), nextDouble(), nextBoolean()BigIntegerjava.math大整数运算add(), subtract(), multiply(), divide()BigDecimaljava.math精确小数运算同上解决浮点数精度问题六、系统相关类类名包主要用途常用方法Systemjava.lang系统级操作currentTimeMillis(), arraycopy(), getProperty(), exit()Runtimejava.lang运行时环境freeMemory(), totalMemory(), exec()Classjava.lang类信息getName(), getMethods(), newInstance()ClassLoaderjava.lang类加载器loadClass(), getResource()七、包装类Wrapper Classes基本类型包装类缓存范围常用方法byteByte-128~127parseByte(), valueOf()shortShort-128~127parseShort(), valueOf()intInteger-128~127parseInt(), valueOf(), toBinaryString()longLong-128~127parseLong(), valueOf()floatFloat无parseFloat(), valueOf()doubleDouble无parseDouble(), valueOf()charCharacter0~127isDigit(), isLetter(), toUpperCase()booleanBooleantrue/falseparseBoolean(), valueOf()八、并发工具类Java 5类名包主要用途Threadjava.lang线程创建和管理Runnablejava.lang线程任务接口Callablejava.util.concurrent可返回结果的线程任务ExecutorServicejava.util.concurrent线程池管理ThreadPoolExecutorjava.util.concurrent线程池实现Futurejava.util.concurrent异步计算结果CountDownLatchjava.util.concurrent同步辅助类Semaphorejava.util.concurrent信号量ReentrantLockjava.util.concurrent.locks可重入锁6 集合整理ListArrayListLinkedListHashsetHashMap一、Java主要集合类核心特性对比特性ArrayListLinkedListHashSetHashMapList接口实现接口ListList, DequeSetMap集合接口数据结构动态数组双向链表哈希表基于HashMap数组链表/红黑树JDK8抽象接口是否有序插入顺序插入顺序无序无序LinkedHashMap有序有序是否可重复是是否Key不可重复Value可重复是线程安全否否否否否增删效率低需移动元素高直接修改指针高高依赖实现类查询效率高下标访问O(1)低遍历O(n)高O(1)高O(1)依赖实现类内存占用连续内存紧凑节点指针占用更高哈希表结构哈希表结构-扩容机制初始容量101.5倍扩容无需扩容0.75负载因子触发扩容0.75负载因子触发扩容-null值处理允许允许允许一个nullKey/Value均允许null允许主要用途随机访问频繁、读多写少频繁增删、队列/栈操作快速去重键值对存储、快速查找有序集合抽象定义二、ArrayList vs LinkedList 详细对比对比项ArrayListLinkedList内部结构Object[] 动态数组Node节点双向链表初始容量100无初始容量随机访问O(1) - 通过索引直接访问O(n) - 需遍历链表定位头部插入O(n) - 移动后续元素O(1) - 直接修改指针尾部插入O(1)均摊扩容时O(n)O(1) - 直接修改尾指针中间插入O(n) - 移动后续元素O(n) - 先遍历定位节点内存占用仅存储元素内存紧凑存储元素前后指针占用更高适合场景读多写少、随机访问频繁写多读少、频繁增删操作三、HashSet vs HashMap 详细对比对比项HashSetHashMap底层实现基于HashMap仅存Key数组链表/红黑树JDK8存储内容仅存储KeyValue为固定占位符存储Key-Value键值对重复判断基于Key的equals()hashCode()基于Key的equals()hashCode()遍历方式迭代器遍历所有KeyKeySet/Values/EntrySet遍历默认容量16同底层HashMap16负载因子0.75同底层HashMap0.75哈希冲突依赖HashMap的链表/红黑树解决链表长度8转红黑树解决同步版本Collections.synchronizedSet()Collections.synchronizedMap()7 权限修饰符关键字Java四种访问权限修饰符对比修饰符同类同包不同包子类不同包非子类作用范围public✅✅✅✅公共的所有地方可访问protected✅✅✅❌受保护的包内子类可访问(default)✅✅❌❌默认的仅同包可访问无修饰符private✅❌❌❌私有的仅同类可访问8 instanceof关键字instanceof 是Java的一个二元运算符用于检查对象是否是特定类的实例或该类的子类/接口的实现类的实例。二、面向对象的三大特性1 封装Encapsulation封装Encapsulation定义将数据属性和行为方法包装在一起隐藏内部实现细节仅对外暴露必要的接口。核心思想数据隐藏私有化属性公开接口提供getter/setter方法保护数据完整性通过方法控制数据访问优点安全性防止数据被非法修改易维护修改内部实现不影响外部调用模块化代码组织更清晰2 继承Inheritance定义子类继承父类的属性和方法实现代码复用和层次化设计。核心思想代码复用子类自动拥有父类功能扩展增强子类可以添加新功能方法重写子类可以修改父类行为优点代码复用减少重复代码易于扩展添加新功能方便维护性好公共代码在父类中维护3 多态Polymorphism它指同一个行为具有多种不同表现形式或形态的能力。具体来说多态是指同一个方法调用作用于不同的对象会产生不同的执行结果

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询