|
目标
本来心思,今年2019年的计划好好深入jdk的,打算一天学一个,于是计划详细时间规范,写了个程序,计算有多少个类,结果,小小的数字对我是伤害那么的大
结果
总共7706个类,一天学一个也需要21年。
于是退而求次 只学习java包下,不包含awt,和applet的结果1495
嗯,,,,,很上火,我只学java.lang和java.util的还不行吗
java.util 364
java.lang 233
但是这是基础,只能督促督促自己了,列入2019年计划了
程序
以下程序写的不是很好,主要是用于计算JDK类库包含多少Java类文件
package jdk.util.concurrent;
import java.io.File;
import java.io.FileFilter;
import java.util.ArrayList;
import java.util.List;
/**
* 计算一下jdk8源码的文件数量,估算自己的学习时间
*
* @ClassName JDKFileLengthTest
* @author <a href="892042158@qq.com" target="_blank">于国帅</a>
* @date 2019年1月26日 上午9:03:31
*
*/
public class JDKFileLengthTest {
static List<String> fileNameList = new ArrayList<>();
public static void main(String[] args) {
// 写一个方法 根据传递的目录来查找
// String dir = "F:\\xmind2\\jdk8_source_code_research\\jdk8_source_code_research"; //7706个类文件
// String dir = "F:\\xmind2\\jdk8_source_code_research\\jdk8_source_code_research\\src\\java"; //1495
// String dir = "F:\\xmind2\\jdk8_source_code_research\\jdk8_source_code_research\\src\\java\\lang"; // 233
String dir = "F:\\xmind2\\jdk8_source_code_research\\jdk8_source_code_research\\src\\java\\util"; // 233
new JDKFileLengthTest().findFileNumber(dir);
System.err.println(fileNameList.size());
}
private void findFileNumber(String dir) {
File file = new File(dir);
if (file.isDirectory()) {
file.listFiles(new FileFilter() {
@Override
public boolean accept(File pathname) {
if (pathname.isDirectory()) {
// awt //applet 排除掉
if (pathname.getAbsolutePath().contains("awt") || pathname.getAbsolutePath().contains("applet"))
return true;
findFileNumber(pathname.getAbsolutePath());
return true;
}
if (pathname.getName().endsWith(".java")) {
fileNameList.add(pathname.getName());
}
return false;
}
});
}
}
} |
————————————————
原文链接:https://blog.csdn.net/mengxiangxingdong/article/details/86654353
程序猿的技术大观园:www.javathinker.net
|
|