教你查阅Java API 英文文档(JDK 11)

 

JAVA Document:https://docs.oracle.com/en/java/javase/11/

然后找到“Specifications”并点击 API Documentation

 

比如我们在别人的源码里看到了

方法[也叫函数]:  Scanner input = new Scanner(System.in);

所以搜索一下右上角 Scanner,

对比我们看到的源码里import,发现是java.util包里的,所以点击一下,出现如下

 

 

专业名词-中英对照表
 All Implemented Interfaces  所有已实现的接口
extends 继承自(从..继承)

 

 

遇到不懂的词可以使用翻译工具(这里我推荐Chrome插件: saladict沙拉查词)

千万不要使用网页翻译,不然一脸懵逼,因为一个词可以有很多个意思,如果词是单独的而没有在句子中,那么网页翻译程序就无法判断这个词具体是那个意思,就可能随便翻译了。

 

 

关于Scanner实现的Inplements(接口),我们也可以查一下:

 

发现这个接口在 java.base/java/io/Closeable

那我们去JDK里找一下,以IntelliJ IDEA为例(据说这个IDE堪称Java中的VS)

 

 然后我们就可以看到这个接口的用法了,用法里面不清楚可以继续用工具翻译(找不到比沙拉查词好用的桌面软件,可以随便开个网页文本框,复制上面内容输入,然后用插件一个个查词)

 

 

 


当然仅靠翻译是不够的,有些句子结构一定要懂

 

例如 The develop of Internet

of和 's  相反顺序,

my brother's phone              我兄弟的phone

而The develop of Internet     Internet的发展

 

那么API里面这一段

 

 结合查词,并从查词结果中挑出和计算机编程术语相关的翻译结果,这样下来,明白Java API文档的意思不难(花点时间,熟悉之后阅读还是很快的)

 

取决于界定模式的类型,empty tokens 可以被返回。 例如: "\\s+"模式将会返回非空tokens   当它匹配多种分隔符号的情况时。         "\\s"分割模式会返回空tokens 当它每次只通过了一个空格时。

再修缮一下词语翻译结果,就是:

这(补主语)取决于分割(根据后面语境重新选用查词结果"分割")模式的类型, 空(empty)tokens 可以被返回。 例如: "\\s+"模式将会返回非空tokens  当匹配到多个分割符号的情况时。       "\\s"分割模式会返回空tokens 当它每次只通过了一个空格时。

 

再修一下语序

empty tokens 可以被返回,这取决于分割模式的类型。 例如,当匹配到多个分割符号的情况时,"\\s+"模式会返回非空tokens;   当匹配到一个空格时,"\\s"分割模式会返回空tokens。

 

 

差不多是这个意思,但是我们还没有用这个方法,不知道这样翻译对不对,但是没关系。用着稍微不对劲,可以再琢磨一下原文。

 

只要熟悉了官方JAVA API Documents之后,完全可以做到全英文查阅。

相比古老且将要被官方抛弃的JDK8,我们已经领先了。

 

 

 

当需要查阅官方文档时,用这种方法去看,不久之后就能快速看懂官方文档了(毕竟楼主这种菜鸡四级都还没考......)

这样的好处是:

    1. 理解英语母语系的人的思维(世界上母语是英语的人特别多,而且很多编程相关的东西也都是他们造的。我们用人家的东西,自然也得能理解人家的思维啊)
    2. 最重要的是中文文档更新慢且很多都停留在几年前,错漏多翻译质量差。如果我们能得到官方一手资料,那就获得了最权威最及时的资料了。
想想你花费了多少时间在网络搜索了多久的配置教程,但其实官网给你的英文文档没有坑且及其全面,是不是感觉自己很“傻”

 


再翻译一些

 

概览(OVERVIEW 就是从上帝视角看)      模块     包     类      USE用法        TREE树                 deprecated过时的,被废弃的,不赞成的           INDEX索引           HELP帮助    

 

 

 

 

所有类(ALL CLASSES)

SUMMARY总结

这一部分翻译完感觉很奇怪,所以应该是Java的专有名词,所以必应搜索一下

找了几页,看到了java词汇表及解释

 这样下来,就看懂了很多东西了。

 


 

当然,最重要的Method还没翻译呢

我们最初要找的是   Scanner input = new Scanner(System.in);

现在Scanner 大部分明白了,为什么传入System.in我们还没明白

推测一下,可能是这个

 

posted @ 2019-05-12 19:52  蓝天上的云℡  阅读(1439)  评论(0编辑  收藏  举报