JavaFX 访问修饰符详解
1. JavaFX 脚本与 .fx 文件
JavaFX 脚本是一种将包含 JavaFX 代码的 .fx
文件,它可以包含零个或多个类。与 Java 不同,JavaFX 不要求你将所有代码都写在类中,应用程序可以有类,也可以没有。因此,你不必总是创建一个类,可以直接在脚本中编写表达式、变量声明、函数等。脚本会内部编译成 Java 类,但这更多是实现细节。理解脚本范式很重要,因为脚本的概念在 JavaFX 中是新的,在 Java 中并不存在,而且 JavaFX 在脚本级别提供了特定的访问修饰符。
在脚本中直接创建的变量和函数相当于 Java 中的 static
修饰符。脚本除了表达式、变量、函数等,还可以包含一个或多个类定义。类成员和脚本成员(位于类外部)具有不同的访问修饰符时,类成员与脚本成员如何交互将在后续章节中详细介绍。
2. 脚本私有访问修饰符
JavaFX 脚本中的默认访问修饰符是 script-private
。当没有明确指定时,编译器会自动分配这个访问修饰符。脚本私有成员仅在其自己的脚本内部可访问,即在同一个 .fx
文件内可以访问,但在外部则不行。即使脚本中可能没有类定义,只要类定义位于同一个 .fx
文件中,脚本私有成员也可以在类定义中访问。
这个访问修饰符适用于变量声明、函数、类定义等。图7-1展示了在包 B 中定义在 script1
内的成员的脚本专用访问权限。