Segrei Ulanov Asked:2020-07-25 02:38:00 +0800 CST2020-07-25 02:38:00 +0800 CST 2020-07-25 02:38:00 +0800 CST 如何在 Scratch 中实现 UI 772 今天在 Google Play 我遇到了一个有趣的程序,一个构造函数,其中实现了立方体(我不知道它们叫什么),如图所示。 所以这对我来说变得很有趣,但是如何实现这些东西呢? java 1 个回答 Voted Best Answer Георгий Чеботарев 2020-07-25T04:29:03+08:002020-07-25T04:29:03+08:00 概念。每个动作(循环、条件、算术)都是从父类ParentAction继承的一个单独的类。每个类都有自己的实现。对于每个块 - 您已经覆盖了执行方法。参数被传递给类构造函数。 abstrast class ParentAction() { abstract fun execute(child: ParentAction) } 我们来分析一个简单的例子:循环打印某行 5 次。在 UI 部分,用户收集了两个块,一个嵌套在另一个块中。从内部到外部传递它的块树,我们收集正确的链,块的执行顺序。在这个例子中, Printf 类是最低限度的。他们不能包装任何东西。请参阅以下课程: сlass Foreach(private val count: Int, child: ParentAction): ParentAction { override fun execute() { for(i : 0..count) { child.execute() } } } 打印类: сlass Printf(private val str: String): ParentAction { override fun execute() { print(str) } } 然后,当返回用户树时,我们得到: 我们使用用户指定的参数生成 Printf 类的对象 我们生成一个 Foreach 类的对象并将 Printf 类传递给它,以便它在自身内部运行它。 我们启动 Foreach 类的执行方法。 全部。枪管转动起来。要实现数学,您必须管理“内存”,以便不同的类可以从公共源顺序读取。结果,您得到了一个简单的编译器“插件”。当然,这一切都取决于你的任务。如果你想创建一个程序来教孩子们编程基础知识,那么这个实现是合适的。如果你想开发一种图形化编程语言,那么你应该深入开发自己的编译器,因为。这个附加组件效率不高。祝你好运!
概念。每个动作(循环、条件、算术)都是从父类ParentAction继承的一个单独的类。每个类都有自己的实现。对于每个块 - 您已经覆盖了执行方法。参数被传递给类构造函数。
我们来分析一个简单的例子:循环打印某行 5 次。在 UI 部分,用户收集了两个块,一个嵌套在另一个块中。从内部到外部传递它的块树,我们收集正确的链,块的执行顺序。在这个例子中, Printf 类是最低限度的。他们不能包装任何东西。请参阅以下课程:
打印类:
然后,当返回用户树时,我们得到:
全部。枪管转动起来。要实现数学,您必须管理“内存”,以便不同的类可以从公共源顺序读取。结果,您得到了一个简单的编译器“插件”。当然,这一切都取决于你的任务。如果你想创建一个程序来教孩子们编程基础知识,那么这个实现是合适的。如果你想开发一种图形化编程语言,那么你应该深入开发自己的编译器,因为。这个附加组件效率不高。祝你好运!