java编程之IO之File类及常用方法

简介: Error和RuntimeException这一类的异常 运行时 javac编译的时候不检测 不需要主动添加处理异常的手段 当然我们愿意的话 也可以添加 除了上述以外其他的异常都需要做检测 要求我们必须添加处理异常的手段 编译不过去处理异常的手段 try{}catch(){}finally{} 1.try不能单独出现 后面必须跟着其他的一个结构 catch或finally都可以 2.catch可以出现很多个 要么多个catch捕获的异常没有继承关系 要么先捕获小 再捕获大 3.final

知识回顾

   Throwable

   Error     Exception

   错误          异常

   通常是一些物理性错误        人为规定的不正常现象

   StackOverflowError  

   运行时RuntimeException----->熟悉常见的运行时异常

   OutOfMemoryError 编译时

Error和RuntimeException这一类的异常

   运行时  javac编译的时候不检测

   不需要主动添加处理异常的手段  

   当然我们愿意的话  也可以添加

   除了上述以外其他的异常都需要做检测  

   要求我们必须添加处理异常的手段  编译不过去

处理异常的手段

   try{}catch(){}finally{}

   1.try不能单独出现  后面必须跟着其他的一个结构

   catch或finally都可以

   2.catch可以出现很多个

   要么多个catch捕获的异常没有继承关系  要么先捕获小 再捕获大

   3.finally可有可无的  若添加了这个结构 则必须执行

   即便是放在方法中 之前有return 也会执行

   4.注意方法内部返回值问题

   5.finally可能会出现一个笔试题   final  finally  finalize区别

throws

   1.只能在方法和构造方法结构上存在(抛出异常)

   2.谁调用此方法  谁处理异常

   3.抛出的异常也可以有多个  用,隔开  

自定义

   1.写一个类  继承Exception   RuntimeException

   2.类中可以写带String参数的构造方法  可以做细致的说明

   3.通过throw关键字   new一个异常的对象

   I/O相关 输入/输出    流(数据流动)

   数据流动的方向   读数据(输入Input)   写数据(输出output)

   文件流  字符流  对象流  网络流....

1.什么叫文件

   一种电脑的存储形式

   文件有不同的格式   .txt   .doc   .ppt   .mp4   .jpg   .rar   ...

   文件夹?----目录路径

   File----->与电脑上的文件或文件夹产生一一对应的映射关系

File是一个类

   1.java.io包中

   2.文件或目录路径名的抽象表示形式

   3.File与真实硬盘中的文件或文件夹  不是一个东西

     File是在内存中的一个对象<---映射--->硬盘上的文件或文件夹

   4.File类中的常用的方法

   canRead()   canWrite()   isHidden()   isFile()   isDirectory()

   length()获取文件中字节的个数

   lastModified()获取文件最后的修改时间--->毫秒值

   String path = getAbsolutePath()  获取文件的绝对路径   D://test//Test.txt

   绝对路径<---->相对路径

   绝对路径可以通过完整的字符串  定位盘符 文件夹 文件

   相对路径没有盘符的写法  

   当前工程(项目)所在的位置找寻

   C:\Users\Administrator\IdeaProjects\TestFile

   String name = getName() 获取文件的名字    Test.txt

   boolean = createNewFile()  创建新的文件

   boolean = mkdir               创建新的文件夹  外层没有 不能创建

   boolean = mkdirs             创建新的文件夹  外层没有 可以自动创建

   String pname = getParent()  获取当前file的父亲file名字

   File file = getParentFile()      获取当前file的父亲file对象

   String[] names = list()            获取当前file的所有儿子名字

   File[] files = listFiles()             获取当前file的所有儿子对象

   boolean = delete() 删除文件或空的文件夹  不能删除带元素的文件夹

2.什么叫文件流   做什么

   读取文件中的内容  向文件中写内容

   文件输入流     文件输出流

   字节型文件输入流  字节型文件输出流

   字符型文件输入流  字符型文件输出流

目录
相关文章
|
1月前
|
Java 开发者
在 Java 中,一个类可以实现多个接口吗?
这是 Java 面向对象编程的一个重要特性,它提供了极大的灵活性和扩展性。
143 57
|
3天前
|
JSON Java Apache
Java基础-常用API-Object类
继承是面向对象编程的重要特性,允许从已有类派生新类。Java采用单继承机制,默认所有类继承自Object类。Object类提供了多个常用方法,如`clone()`用于复制对象,`equals()`判断对象是否相等,`hashCode()`计算哈希码,`toString()`返回对象的字符串表示,`wait()`、`notify()`和`notifyAll()`用于线程同步,`finalize()`在对象被垃圾回收时调用。掌握这些方法有助于更好地理解和使用Java中的对象行为。
|
29天前
|
Java
java 中 IO 流
Java中的IO流是用于处理输入输出操作的机制,主要包括字节流和字符流两大类。字节流以8位字节为单位处理数据,如FileInputStream和FileOutputStream;字符流以16位Unicode字符为单位,如FileReader和FileWriter。这些流提供了读写文件、网络传输等基本功能。
50 9
|
1月前
|
存储 缓存 安全
java 中操作字符串都有哪些类,它们之间有什么区别
Java中操作字符串的类主要有String、StringBuilder和StringBuffer。String是不可变的,每次操作都会生成新对象;StringBuilder和StringBuffer都是可变的,但StringBuilder是非线程安全的,而StringBuffer是线程安全的,因此性能略低。
53 8
|
1月前
|
安全 Java
Java多线程集合类
本文介绍了Java中线程安全的问题及解决方案。通过示例代码展示了使用`CopyOnWriteArrayList`、`CopyOnWriteArraySet`和`ConcurrentHashMap`来解决多线程环境下集合操作的线程安全问题。这些类通过不同的机制确保了线程安全,提高了并发性能。
|
1月前
|
存储 Java 程序员
Java基础的灵魂——Object类方法详解(社招面试不踩坑)
本文介绍了Java中`Object`类的几个重要方法,包括`toString`、`equals`、`hashCode`、`finalize`、`clone`、`getClass`、`notify`和`wait`。这些方法是面试中的常考点,掌握它们有助于理解Java对象的行为和实现多线程编程。作者通过具体示例和应用场景,详细解析了每个方法的作用和重写技巧,帮助读者更好地应对面试和技术开发。
133 4
|
1月前
|
Java 编译器 开发者
Java异常处理的最佳实践,涵盖理解异常类体系、选择合适的异常类型、提供详细异常信息、合理使用try-catch和finally语句、使用try-with-resources、记录异常信息等方面
本文探讨了Java异常处理的最佳实践,涵盖理解异常类体系、选择合适的异常类型、提供详细异常信息、合理使用try-catch和finally语句、使用try-with-resources、记录异常信息等方面,帮助开发者提高代码质量和程序的健壮性。
76 2
|
1月前
|
Java Android开发
Eclipse 创建 Java 类
Eclipse 创建 Java 类
28 0
|
1月前
|
监控 安全 Java
Java中的多线程编程:从入门到实践####
本文将深入浅出地探讨Java多线程编程的核心概念、应用场景及实践技巧。不同于传统的摘要形式,本文将以一个简短的代码示例作为开篇,直接展示多线程的魅力,随后再详细解析其背后的原理与实现方式,旨在帮助读者快速理解并掌握Java多线程编程的基本技能。 ```java // 简单的多线程示例:创建两个线程,分别打印不同的消息 public class SimpleMultithreading { public static void main(String[] args) { Thread thread1 = new Thread(() -> System.out.prin
|
1月前
|
安全 Java 调度
Java中的多线程编程入门
【10月更文挑战第29天】在Java的世界中,多线程就像是一场精心编排的交响乐。每个线程都是乐团中的一个乐手,他们各自演奏着自己的部分,却又和谐地共同完成整场演出。本文将带你走进Java多线程的世界,让你从零基础到能够编写基本的多线程程序。
37 1