| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> 我的世界Bukkit服务器插件开发教程(六)定时器 -> 正文阅读 |
|
[系统运维]我的世界Bukkit服务器插件开发教程(六)定时器 |
六、定时器如果你有一定的Java基础,应该知道Runnable和Thread。 BukkitRunnable是实现了Runnable的抽象,它还有一个Runnable所没有的功能——能自我安排和取消。 BukkitRunnable的实现也不复杂。你在写插件的时候,多多推荐你用BukkitRunnable。 BukkitRunnable有着强大的功能,定时开始做任务,互不干扰。 创建在此之前,你需要知道,Bukkit有个 基本套框
我们继承并重载BukkitRunnable中的run方法,这样就是儿子继承父亲然后变异了。 匿名创建匿名,没有名字。创建一个没有名字的BukkitRunnable,这也可以。
但是,同上面继承创建相比而言,我更喜欢继承创建BukkitRunnable。 匿名创建虽然很便捷,但是用多了会发现代码很乱,有些需重复执行的任务只需创建一个类并调用它就可以了。 自我取消前面提到过,BukkitRunnable独有的功能是能够自我的取消。那么,该如何实现呢?
定时任务我们想要去做一个任务,但是,我们希望它在某个时刻自动执行,该如何实现呢? 匿名创建实现:
其中,runTaskTimer的参数分别是主类、延迟时间、多少秒运行一次。 继承创建实现:
重填旧坑之前讲过,我会讲完定时器,然后做出个非常棒的插件。
请注意我为什么要把for循环删掉。因为这个任务本身就是一个for,再来个for就显得很多余了。 看要求,需要1秒1秒的执行,那么就是定时任务。
但是,这种情况并不能无止尽的下去,也就是说,你需要在某个时刻停止执行任务。(很熟悉?——自我取消)。
可以看到,上面的代码把我们这次所学的基本套框、自我取消、定时任务完美地融合在了一起。 上一篇:我的世界Bukkit服务器插件开发教程(五)方块Blocks |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/16 4:32:14- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |