File,FileInfo,Directory,DirectoryInfo
两者的共同点:
一:都用于典型的操作,如复制、移动、重命名、创建、打开、删除和追加到文件
二:默认情况下,将向所有用户授予对新文件的完全读/写访问权限。
两者的区别:
File类是静态类,由于所有的File方法都是静态的,所以如果只想执行一个操作,那么使用File方法的效率比使用相应的FileInfo 实例方法可能更高。所有的File方法都要求当前所操作的文件的路径。File 类的静态方法对所有方法都执行安全检查。如果打算多次重用某个对象,可考虑改用FileInfo的相应实例方法,因为并不总是需要安全检查。
file,directory可以控制多个文件所以进行每次安全检查,而FileInfo,DirectoryInfo只能控制一个文件信息只进行一次安全处理。
静态方法每次对文件进行操作过程是:静态方法存在于栈头,它是由类调用,然后寻找需要操作的文件。寻找需要操作文件的过程是个IO过程,耗时比较长。但它不必要到堆区去遍历实例化新对象。
普通方法是由当时的对象调用,需要创建对象,new一个,(静态方法不需要此过程)但如果操作次数多的话,普通方法就不需要再次去执行不必要而且耗时的IO操作,就能整体提速!
所以执行方法的次数也就能决定了使用哪个类的最佳选择。
转载于:https://www.cnblogs.com/WarBlog/p/5828350.html
File,FileInfo,Directory,DirectoryInfo相关推荐
- File,FileInfo;Directory,DirectoyInfo的区别
曾经看过有文章说FileInfo.DirectoryInfo类主要用于文件.目录的属性,操作功能不强云云,似乎有忘文生义的嫌疑. 也说说自己的学习体会: 一. File,Dire ...
- FileInfo和DirectoryInfo
一.最直观的比较 file和fileinfo都提供对文件的操作 file类提供静态的方法,file类不能被继承,也不能产生实例,如果只需要使用一次或者次数很少,那么使用file类会比使用fi ...
- PHP-Redis扩展安装 error: ext/standard/php_smart_str.h: No such file or directory
在源码编译PHP-redis扩展时,遇到缺少头文件问题 [问题描述] error: ext/standard/php_smart_str.h: No such file or directory [问 ...
- libgstreamer-1.0.so.0: cannot open shared object file: No such file or directory
1. 问题现象 error while loading shared libraries: libgstreamer-1.0.so.0: cannot open shared object file: ...
- pip 升级之后提示 bash: /usr/bin/pip3: No such file or directory
1. 问题现象 pip 升级之后使用时报错: $ pip3 -V bash: /usr/bin/pip3: No such file or directory 通过命令查找 pip 位置 $ whic ...
- pip install faiss-gpu失败unable to execute ‘swig‘: No such file or directory
1. 安装报错 unable to execute 'swig': No such file or directory error: command 'swig' failed with exit s ...
- GCC 链接 xxx:No such file or directory 及运行可执行文件 error while loading shared libraries: xxx.so 解决方案
关于 GCC 提示找不到指定库文件的这个问题,通常出现在以下 2 个场景中: 利用静态库或者动态库文件实现链接操作(生成可执行文件)时,·GCC 可能会提示 xxx:No such file or d ...
- npm install遇到ENOENT: no such file or directory, rename错误
问题描述 npm 安装模块时遇到ENOENT: no such file or directory, rename错误 解决办法 1.删除根目录下package-lock.json文件 2.删除根目录 ...
- docker load 出错 open /var/lib/docker/tmp/docker-import-837327978/bin/json: no such file or directory
1. 问题现象 使用 docker load 加载镜像包的时候出现如下错误: open /var/lib/docker/tmp/docker-import-837327978/bin/json: no ...
最新文章
- Centos6.5_x86_64 编译安装Subversion-1.8.5
- 【视频】React redux toolkit创建状态切片
- CGRectInset CGRectoffset UIEdgeInsetsInsetRect 这三个函数的使用情况
- Android Studio中解决jar包重复依赖导致的代码编译错误
- 2019 年,智能问答(Question Answering)的主要研究方向有哪些?
- OceanBase在蚂蚁金服的智能运维实践之路
- 中关村十大AI研究院 | 盘点
- 开源微信共享记账小程序
- 简析:世博会燃印刷业激情
- 更改Word文档中自带插入公式中的字体解决方案
- Linux 返回根目录
- ACM International Collegiate Programming Contest, Egyptian Collegiate Programming Contest (ECPC 2015
- Android基于安卓手机个人理财系统
- 12.面向对象(继承/super/接口/抽象类)
- 笔试练习题002...to be continued...
- Markdown的语法使用
- 【女黑客看《流浪地球2》是什么体验】
- 适用于Linux的5种开源赛车和飞行游戏
- kdb的基本用法 2
- 微信小程序 自定义tab不煽动
热门文章
- android调用系统相机图片不旋转,Android 处理调用系统相机生成的被旋转图片
- PHP聊天记录内啥,PHP的PSR系列轨范都有啥内容
- 图片添加对话气泡app_刘雨昕、谢可寅、虞书欣代言农夫山泉TOT气泡饮
- ConcurrentHashMap原理,jdk7和jdk8的区别
- docker运行随机分配端口
- 盘点八个程序员必备的代码编辑器
- [python进阶]12.继承的优缺点
- 解决关于登录校园网显示不在IP段的问题方案(要看注意事项哦!)
- 类从未使用_如果您从未依赖在线销售,如何优化您的网站
- iOS底层探索(二) - 写给小白看的Clang编译过程原理