1.  枚举类型  

描述一种事物的所有情况|所有可能|所有实例

(1)通过enum关键字定义枚举类型

(2)枚举的成员,字段都作为当前枚举类型的实例存在,默认被public static final修饰

(3)定义的枚举类型都会隐式的继承自java.lang.Enum 这是所有Java语言枚举类型的公共基类。

(4)在枚举类型中构造器默认私有

(5)java是值传递:基本数据类型的数据值,引用数据类型的地址值

2、File 路径或者文件的抽象的表现形式

注意:java中路径的分隔符可以使用: \\ / //

public static void main(String[] args) throws IOException {

        //File(String pathname) 通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例。

        File file1 = new File("D:\\test.txt");

        File file2 = new File("D:\\AAA");

        File file3 = new File("D:/");

        //File(File parent, String child) 从父抽象路径名和子路径名字符串创建新的 File实例。

        File file4 = new File(file3,"test.txt");



        ////File(String parent, String child) 从父路径名字符串和子路径名字符串创建新的 File实例。

        File file5 = new File("D://AAA","BBB");



        File file6 = new File("D://haha.txt");



        System.out.println(file1);

        System.out.println(file2);

        System.out.println(file4);



        System.out.println(file1.equals(file4));

        System.out.println(file2.equals(file5));

        System.out.println(file5);



        //常用方法

        //boolean canWrite() 测试应用程序是否可以修改此抽象路径名表示的文件。

        //boolean exists() 测试此抽象路径名表示的文件或目录是否存在。

        //boolean setReadOnly() 标记此抽象路径名指定的文件或目录,以便仅允许读取操作。

        if(file1.exists()){

            System.out.println("只读状态设置: "+file1.setReadOnly());

            System.out.println("判断文件file1是否可以编写 "+file1.canWrite());

        }



        //boolean createNewFile() 当且仅当具有此名称的文件尚不存在时,以原子方式创建由此抽象路径名命名的新空文件。

        if(!file6.exists()){

            System.out.println(file6.createNewFile());

        }



        //boolean delete() 删除此抽象路径名表示的文件或目录。  空文件夹才可以删除

        System.out.println(file6.delete());

        System.out.println(file2.delete());



        //File getAbsoluteFile() 返回此抽象路径名的绝对形式。

        //String getAbsolutePath() 返回此抽象路径名的绝对路径名字符串。

        System.out.println(file1.getAbsolutePath());

        System.out.println(file1.getAbsoluteFile());



        //默认相对于当前项目下

        File file = new File("test.txt");

        System.out.println(file);

        System.out.println(file.getAbsolutePath()); //D:\source_s\lesson\java49\0206_常用类\002_code\project_class\test.txt

        System.out.println(file.getAbsoluteFile()); //D:\source_s\lesson\java49\0206_常用类\002_code\project_class\test.txt



        //long getFreeSpace() 通过此抽象路径名返回分区 named中未分配的字节数。

        System.out.println(file3.getFreeSpace());

        //long getTotalSpace() 通过此抽象路径名返回分区 named的大小。



        //String getName() 返回此抽象路径名表示的文件或目录的名称。

        System.out.println(file1.getName());

        System.out.println(file5.getName());



        //String getParent() 返回此抽象路径名父项的路径名字符串,如果此路径名未指定父目录,则返回 null 。

        //File getParentFile() 返回此抽象路径名父项的抽象路径名,如果此路径名未指定父目录,则返回 null 。

        System.out.println(file1.getParent());

        System.out.println(file1.getParentFile());

        System.out.println(file5.getParent());

        System.out.println(file5.getParentFile());



        /*

        boolean isAbsolute() 测试此抽象路径名是否为绝对路径。

        boolean isDirectory() 测试此抽象路径名表示的文件是否为目录。

        boolean isFile() 测试此抽象路径名表示的文件是否为普通文件。

         */

        System.out.println(file1.isFile());

        System.out.println(file1.isDirectory());

        System.out.println(file1.isAbsolute());



        //long lastModified() 返回上次修改此抽象路径名表示的文件的时间。

        System.out.println(file1.lastModified());

        System.out.println(new SimpleDateFormat("yyyy/MM/dd HH:mm:ss").format(new Date(file1.lastModified())));



        //long length() 返回此抽象路径名表示的文件的长度。

        System.out.println(file1.length());



        //String[] list() 返回一个字符串数组,用于命名此抽象路径名表示的目录中的文件和目录。

        //File[] listFiles() 返回一个抽象路径名数组,表示此抽象路径名表示的目录中的文件。

        File src = new File("D://DDD");

        System.out.println(Arrays.toString(src.list()));

        File[] files = src.listFiles();

        for(File f:files){

            System.out.println(f);

        }



        File file8 = new File("D://haha");

        File file9 = new File("D://hehe/heihei/hengheng.txt");

        //boole9n mkdir() 创建此抽象路径名指定的目录。   一层

        System.out.println(file8.mkdir());

        //boolean mkdirs() 创建此抽象路径名指定的目录,包括任何必需但不存在的父目录。    多层

        System.out.println(file9.getParentFile().mkdirs());



        //boolean renameTo(File dest) 重命名此抽象路径名表示的文件。

        //测试 : 跨盘符是否可以实现重命名???

        File file10 = new File("D://test2.txt");

        System.out.println(file1.renameTo(file10));

    }

}

13、java——常用类的更多相关文章

  1. Java 常用类总结(SE基础)

    本篇博客对java常用类相关知识进行了归纳总结,比较详细,适用于学习和复习. 1. 字符串相关的类 1.1 String String是一个final类,代表不可变的字符序列.不可被继承. Strin ...

  2. Java基础 —— Java常用类

    Java常用类: java.lang包: java.lang.Object类: hashcode()方法:返回一段整型的哈希码,代表地址. toString()方法:返回父类名+"@&quo ...

  3. Java常用类之要点总结

    Java常用类之要点总结

  4. Java常用类:包装类,String,日期类,Math,File,枚举类

    Java常用类:包装类,String,日期类,Math,File,枚举类

  5. Java常用类学习笔记总结

    Java常用类 java.lang.String类的使用 1.概述 String:字符串,使用一对""引起来表示. 1.String声明为final的,不可被继承 2.String ...

  6. Java常用类的使用

    Java常用类 1. Optional 在我们的开发中,NullPointerException可谓是随时随处可见,为了避免空指针异常,我们常常需要进行 一 些防御式的检查,所以在代码中常常可见if( ...

  7. Java常用类详解

    目录 1. String类 1.1 String的特性 1.2 String字面量赋值的内存理解 1.3 String new方式赋值的内存理解 1.4 String 拼接字面量和变量的方式赋值 1. ...

  8. Java常用类之String类、Stringbuffer和Random类练习

    定义一个StringBuffer类对象, 1)使用append方法向对象中添加26个字母,并倒序遍历输入 2)删除前五个字符 package 第十一章常用类; /** * 定义一个StringBuff ...

  9. java常用类-上

    一,常用类之一包装类 java开发中习惯把八大基本数据类型封装到一个类中,并提供属性和方法,更方便的操作基本数据类型. 包装类的出现并不是用于取代基本数据类型,也取代不了. 包装类位于java.lan ...

随机推荐

  1. 开放式神经网络交换-ONNX(下)

    开放式神经网络交换-ONNX(下) 计算节点由名称.它调用的算子operator的名称.命名输入的列表.命名输出的列表和属性列表组成. 输入和输出在位置上与算子operator输入和输出相关联.属性通 ...

  2. 解决redis集群版本不一致导致RDB同步失败的问题

    某天,运维反馈某两个机房的出口流量和入口流量过大,并且持续了好一段时间. 再仔细排查后发现是 redis 集群的几台服流量问题,于是开始查日志. 在日志中发现出现大量的 Can't handle RD ...

  3. Lombok——一款Java构建工具,“懒人”必备!!(idea版)

    一.简介 Lombok 是一种 Jav 构建工具,可用来帮助开发人员消除 Java 的冗长代码,尤其是对于简单的 Java 对象(POJO).它是通过注解实现这一目的. 二.使用 1.在idea中安装 ...

  4. 基本FTP服务: 文件传输协议

    1.服务端虚拟机Server,安装可以提供FTP服务软件 [root@server0 ~]# yum -y install vsftpd 2.虚拟机Server操作,启动 vsftpd服务,设置为开机 ...

  5. Kubernetes 实战——有状态应用(StatefulSet)

    一.简介 有状态实例:新实例和旧实例需要有相同的名称.网络标识和状态 无状态实例:可随时被替换 1. ReplicaSet 和有状态 Pod ReplicaSet 通过 Pod 模板创建多个 Pod ...

  6. Pytorch CNN网络MNIST数字识别 [超详细记录] 学习笔记(三)

    目录 1. 准备数据集 1.1 MNIST数据集获取: 1.2 程序部分 2. 设计网络结构 2.1 网络设计 2.2 程序部分 3. 迭代训练 4. 测试集预测部分 5. 全部代码 1. 准备数据集 ...

  7. 透彻理解液晶显示模组LCD1602指令集与驱动编程(1)

    LCD1602可以说是大多数单片机工程师了解液晶显示的入门级模组,其显示原理与其它很多显示模组也是相似的,今天我们就来详细讨论一下它的指令集.所谓模组的指令集,本质上是该模组使用的控制芯片的指令集,本 ...

  8. React 并发功能体验-前端的并发模式已经到来。

    React 是一个开源 JavaScript 库,开发人员使用它来创建基于 Web 和移动的应用程序,并且支持构建交互式用户界面和 UI 组件.React 是由 Facebook 软件工程师 Jord ...

  9. Spring Boot Docker

    1.  IDEA中配置Docker Docker默认只接受本地客户端的请求,为了能够远程访问它,首先要开放Docker的监听端口,运行外部应用可以访问 修改 /lib/systemd/system/d ...

  10. 第14章:部署Java网站项目案例

    1 说明 (1) 项目迁移到k8s平台的流程 1) 制作镜像 dockerfile.docker+jenkins持续集成.镜像分类:基础镜像.中间镜像.项目镜像 2) 控制器管理pod 控制器管理po ...