一.Object类 1.概述:Java语言的根类/超类,默认继承自Object类 2.常用方法 toString():返回对象的字符串表示--对象类型@内存地址值 可以对其重写@Override equals(Object):比较两个对象是否相同(调用者会出现空指针异常) 默认进行==地址比较 自定义对象内容比较,需要重写Override(先==地址比较再转型比较成员内容) Objects工具类:不会出现空指针异常(地址比较&a不空时再调用equals方法) 二.日期时间类 1.Date类 时间…
回顾一下Java之前学的内容 Day01 前言.入门程序.常量.变量 一.基础知识 莱布尼茨发明二进制,辗转相除与8421位权法互转,1B=1bit=1字节=8位=8byte dos cls清屏dir查看文件夹 cd\根目录 二.语言及环境搭建 在JVM基础上,有了jre,需要编程则要用JDK,Oracle官网下载jdk,安装及环境变量配置 三.入门程序 javac a.java编译为class字节码文件 java a运行程序 四.常量.变量 布尔boolean类型-true/false全小写…
〇.总结 Stream流的方法:forEach.filter.map.count.limit.skip.concat(结合之前的Collectors接口) 方法引用:Lambda的其他类方法体相同,如System.out:println 一.Stream流 java.util.stream.Stream<T> 1.概述及传统方式 与IO流不同,用于简化集合和数组的操作,解决现有类库的弊端 传统方式遍历集合(逐一处理):for循环.for-each.Iterator迭代器 package com…
一.函数式接口介绍 1.概念 仅有一个抽象方法的接口 适用于函数式编程(Lambda使用的接口) 语法糖:方便但原理不变,如for-each是Iterator的语法糖 Lambda≈匿名内部类的语法糖 2.格式 @FunctionalInterface注解 可以检测接口是否是一个函数式接口,不是则编译失败 3.使用 常规写法: 编写接口实现类 定义方法,参数传递接口,方法内调用接口的方法 main方法调用 package com.liujinhui.Day1207FunInterface; /*…
一.缓冲流 1.概述 比普通流更强大的IO流,可以增加读写的效率 组成 缓冲输入流:BufferedInputStream.BufferedReader 缓冲输出流:BufferedOutputStream.BufferedWriter 1.字节缓冲输出流(构造传递具体输出流) BufferedOutputStream public class Demo01BufferOutputStream { public static void main(String[] args) throws IOE…
一.I/O概述 1.输入输出 输入:硬盘-->内存 输出:内存-->内存 2.流 字节流:一个字节等于8位 字符流:一个字符=2个字节 二.字节流 1.概述 以字节的方式读取/传输 可以读取任意文件 2.字节输出流 OutputStream 抽象类,是所有字节输出类的超类 方法: close() flush() :刷新并写出 write(byte[] b) write(byte[] b, int off, int len) write(int b) :写入指定的字节,如97 构造方法传递文件路…
一.File类 1.概述java.io.File 文件和路径的抽象表示 用于文件和目录的创建.查找和删除等 分类 file--文件 directory--文件夹/目录 path--路径 2.静态成员变量 pathSeparator/pathSeparatorChar:路径分隔符(;) separator/separatorChar:名称分隔符 Linux:/ Windows:\ 3.绝对路径和相对路径 相对:相对于项目的根目录 路径不区分大小写,(Java语言中)双反斜杠表示转义字符 4.构造方…
一.等待唤醒机制 1.线程间通信 多个线程处理同一个资源,就存在线程通信问题(线程间存在竞争与协作机制) 为什么处理:为了 保证多个线程有规律地完成同一任务 如何处理:避免对共享变量争夺,需要等待唤醒机制,保证各线程有效利用资源 2.等待唤醒机制 定义:A线程执行操作后进入等待(wait)状态,等B线程执行完指定代码后再将A唤醒(notify)/唤醒多个线程(notifyAll) 注意: wait和notify需要由同一个锁对象Obj调用 锁对象可以是任意对象<? extends Object>…
一.线程 1.多线程原理 流程图 内存图解说明 创建线程的方式 继承Thread类 实现 Runnable接口 2.继承Thead类 3.实现Runnable接口 实现接口,重写run方法 最终均需要通过Thread类实现多线程 3.Thread和Runnable的区别 前者不是和资源共享,Runnable易于实现资源共享 实现Runnable接口的优势 适合多个线程共享统一资源 避免单继承局限性 每次运行启动两个线程:main和垃圾回收线程 4.匿名内部类方式创建 匿名内部类实现 Runnab…
一.异常 1.概念 程序执行过程中,出现非正常情况导致JVM的非正常停止 本身是一个类,产生异常即创建并抛出一个异常对象 Java处理异常的方式是进行中断处理 异常非语法错误,语法错误直接不会产生class字节码文件 2.异常体系 根类Throwable 子类Error:严重无法处理的错误,只能避免 子类Exception:产生异常可以通过代码修正 常用方法 printStackTrace():打印异常的详细信息 getMessage():获取异常的原因 toString():异常类型和描述信息…