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. Mobileye独创性创新

    Mobileye独创性创新 尽管存在相似之处,但Nvidia的SFF无法与Mobileye的RSS相匹配,后者是领先的AV安全模型 迈向无人驾驶的未来,Mobileye继续以新的创新引领行业,不仅将使 ...

  2. Xilinx FPGA全局介绍

    Xilinx FPGA全局介绍 现场可编程门阵列 (FPGA) 具有诸多特性,无论是单独使用,抑或采用多样化架构,皆可作为宝贵的计算资产:许多设计人员并不熟悉 FPGA,亦不清楚如何将这类器件整合到设 ...

  3. 汽车HUD(Head-up Display)的技术难点

    汽车HUD(Head-up Display)的技术难点 首先解析一下HUD是什么原理吧.其实就是把车的前挡风玻璃当成反射镜,在驾驶员人眼前投射一个仪表盘的虚像.图像本身来自下方的电子发光屏,发出仪表盘 ...

  4. 『言善信』Fiddler工具 — 9、Fiddler自动响应器(AutoResponder)详解

    目录 1.AutoResponder介绍 2.AutoResponder界面说明 (1)选项: (2)按钮: (3)Rule Editor(规则编辑): (4)test(测试): (5)规则框: 1. ...

  5. BP-Wrapper:无锁竞争的缓存替换算法系统框架

    BP-Wrapper:无锁竞争的替换算法系统框架 最近看了一个golang的高性能缓存ristretto,该缓存可以很好地实现如下功能: Concurrent High cache-hit ratio ...

  6. python做。大神空闲时间能帮忙弄一串代码嘛?猜拳游戏,分很多种手的背面和正面,最后剩下的再石头剪刀布

    .每天课程结束后,老师会选择一列的同学清扫教室,人数不定(建议根据当时情况输入),在收拾完教室后,最后一步是需要从这一列的同学中选择1-2人去倒垃圾桶,垃圾桶数量根据当时情况决定,目前采取的方式是, ...

  7. 【题解】T749 localmaxima

    # T749 localmaxima 权限限制没有超链接 题目描述 Description 给出一个排列,若其中一个数比它前面的数都大,则称为localmaxima数,求一个随机排列中localmax ...

  8. 有趣的开源项目集结完毕,HelloGitHub 月刊第 63 期发布啦!

    兴趣是最好的老师,HelloGitHub 让你对编程感兴趣! 简介 分享 GitHub 上有趣.入门级的开源项目. 这里有实战项目.入门教程.黑科技.开源书籍.大厂开源项目等,涵盖多种编程语言 Pyt ...

  9. .NET Worker Service 部署到 Linux 作为 Systemd Service 运行

    上一篇文章我们了解了如何将.NET Worker Service 作为 Windows 服务运行,今天我接着介绍一下如何将 Worker Service 部署到 Linux 上,并作为 Systemd ...

  10. 密码学系列之:twofish对称密钥分组算法

    简介 之前的文章我们讲到blowfish算法因为每次加密的块比较小只有64bits,所以不建议使用blowfish加密超过4G的文件.同时因为加密块小还会导致生日攻击等.所以才有了blowfish的继 ...