# JavaDoc的使用
# 了解JavaDoc
在之前我张口就会告诉你一些用法, 例如String
类里有replace
方法, 这个方法是怎么用的, 我是怎么知道的呢? 我怎么保证我所讲的内容的正确性?
很简单, 我讲的用法其实都是查Java官方的JavaDoc查出来的.
BukkitAPI也有其JavaDoc可以查阅. 我们可以通过JavaDoc查询到BukkitAPI都有哪些API, 以及使用方法.
最新版本JavaDoc网址: https://hub.spigotmc.org/javadocs/spigot/index.html?overview-summary.html
旧版本JavaDoc网址(1.7.10): http://jd.bukkit.org/
国内有一群热爱开发的人做出了中文JavaDoc, 开发时可以用以参考.
最新版本中文JavaDoc网址: https://bukkit.windit.net/javadoc/
他们的GitHub地址: https://github.com/BukkitAPI-Translation-Group/Chinese_BukkitAPI
JavaDoc分为左右两个大部分, 左侧上方部分为所有的包, 左侧下方部分为所有的类, 右侧即为你选择的内容的详细信息. 使用时操作基本方法如下:
# 我怎么知道该找哪个类
你可能纳闷, 比如我想知道玩家是哪个类代表的, 应该怎么查?
第一种方法就是在左侧所有的类中找, 看看哪个类的名字可以翻译成“玩家”之类的意思, 说不定能找到.
第二章方法就是直接问别人, 别人踩完坑后告诉你.
# 寻找我们想要的信息
例: 现在我们有了一个
Player
对象, 如何向这个Player
对象对应玩家发送一个消息Hello guy!
?Player p = 魔法; //这是我们现在获得的一个Player对象
# 利用JavaDoc找到想要的信息
对于我们不知道的东西, 我们应该查看JavaDoc. 这里我们想查询Player
类里怎样给玩家发信息, 按照上面的方法打开Player类的详细信息. 利用浏览器的搜索功能Ctrl+F
, 你可以试着搜一些与“信息”有关的英文词汇, 比如message
等.
我们可以发现, JavaDoc中说Player
类从CommandSender
类里继承来了sendMessage
方法, 很可能符合我们的需求.
点击sendMessage
可以跳转到CommandSender
类中对sendMessage
方法描述的地方, 我们可以查看关于sendMessage
方法有关的内容.
通过描述, 我们可以得知, sendMessage
方法的作用是Sends this sender a message
. 这样一想, Player
继承了CommandSender
, 我们想给玩家发信息就是给玩家这个Sender
发信息, 这个方法就是我们要找的东西了!
那么我们就应该这样调用这个方法:
p.sendMessage("Hello guys!");
# 看看别人是怎么做的
很多插件都有向玩家发信息的功能. 如果一个东西自己实在找不到了, 那就看看别人是怎么弄的.
先随便找一个插件, 看清楚是Spigot
插件, 并且插件介绍帖里提到它会定时给玩家发一个消息叫[系统] 您已进入挂机模式, 再次移动可取消挂机状态
. 这个发送功能恰是我们需要的. 我们可以下载下来这个插件, 用反编译软件(例如:JD-GUI)打开它.
可能因为插件太简单, 作者并没有给这个插件混淆, 我们用JD-GUI可以正常反编译出源码, 顺着这个提示语一翻, 可以轻松找到这个发送信息功能的实现方式, 它用的正是p.sendMessage
: