<html><head><style type="text/css">
/* <![CDATA[ */
@import "/branding/css/tigris.css";
@import "/branding/css/inst.css";
/* ]]> */
</style>
<link rel="stylesheet" type="text/css" href="JavaFX_Programming_Language_CN_files/print.css" media="print">
<style type="text/css">
/* <![CDATA[ */
@import "/branding/css/alm.css";
/* ]]> */
</style>
<title>
openjfx: JavaFX编程语言
</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="Content-Style-Type" content="text/css">
<meta name="version" content="4.5.2.148.1">
<meta name="description" content="JavaFX编程语言">
<meta name="original author" content="Christopher Oliver">
<meta name="modified-by" content="Cindy Castillo">
<meta name="last-updated" content="3 May 2007">
<meta name="keywords" content="JavaFX Script, Java, scripting, Programming, Language">
<!-- link rel="stylesheet" href="http://www.netbeans.org/netbeans.css" type="text/css" -->
<link rel="stylesheet" href="JavaFX_Programming_Language_CN_files/javafx.css" type="text/css">
<style type="text/css">
<!--
.style3 {color: #009900}
.style4 {color: #FF0000}
-->
</style>
</head><body class="composite">
<div id="bodycol">
<a name="top"></a>
<h1>JavaFX编程语言</h1>
<div class="articledate" style="margin-left: 0px;">Last Updated: May 2007</div>
<p>JavaFX Script™ (下文中成为JavaFX)语言是一种声明式的静态类型编程语言。它具有第一级函数(first-class
functions)、声明式的语法、列表推导(list-comprehensions)及基于依赖关系的增量式求值(incremental
dependency-based evaluation)等特征。JavaFX 脚本式语言特别适用于Java2D swing
GUI组件,它允许简单地创建图形界面。 </p>
<p>译者注:第一级函数指函数被当作对象对待,可以在运行时赋值、传递和返回。详见<a href="http://en.wikipedia.org/wiki/First-class_function">wikipedia上的解释</a>。</p>
<p>译者注:列表推导指一种在函数语言中的表达式,它表示了在一个或者多个列表的成员(被选择的)进行某种操作的结果。它被称为“syntactic sugar”,即为开发者提供了便捷的多种函数的应用组合。详见<a href="http://ftp.sunet.se/foldoc/foldoc.cgi?list+comprehension">FOLDC对list comprehension的解释</a>。</p>
<p>本文档给出了JavaFX 脚本式编程语言的非正式描述。</p>
<h3>内容:</h3>
<ul>
<li><a href="#basic_types">基本类型</a></li>
<li><a href="#calling_java">调用Java对象</a> </li>
<li><a href="#variables">变量</a></li>
<li><a href="#func_arrays">函数、数组、表达式和操作</a> </li>
<li><a href="#mod_arrays">修改数组</a>
<ul>
<li><a href="#insert_stmt">insert语句</a>
<ul>
<li><a href="#into">into</a> </li>
<li><a href="#before_after">before, after</a></li>
</ul>
</li><li><a href="#delete_stmt">delete语句</a></li>
</ul>
</li><li><a href="#query_array">查询数组</a></li>
<li><a href="#before_after">表达式</a></li>
<li><a href="#string_literals">字符串和字符串表达式</a></li>
<li><a href="#quoted_id">引用标识符</a></li>
<li><a href="#range_expr">范围表达式</a></li>
<li><a href="#string_format">字符串(String)、数值(Number)和日期的格式化</a></li>
<li><a href="#operations">操作</a>
<ul>
<li><a href="#expr_stmt">表达式语句</a></li>
<li><a href="#if_stmt">If语句</a></li>
<li><a href="#while_stmt">While语句</a></li>
<li><a href="#try_stmt">Try语句</a></li>
<li><a href="#for_stmt">For语句</a></li>
<li><a href="#return_stmt">Return语句</a></li>
<li><a href="#throw_stmt">Throw语句</a></li>
<li><a href="#break_stmt">Break和Continue语句</a></li>
<li><a href="#do_stmt">Do语句</a>
<ul>
<li><a href="#do_later">do later</a></li>
</ul>
</li></ul>
</li><li><a href="#do_stmt">类与对象</a>
<ul>
<li><a href="#obj_literals">属性声明</a></li>
<li><a href="#obj_literals">对象声明</a></li>
</ul>
</li><li><a href="#upd_trig">更新触发器</a>
<ul>
<li><a href="#create_trig">创建触发器</a></li>
<li><a href="#insert_trig">插入触发器</a></li>
<li><a href="#delete_trig">删除触发器</a></li>
<li><a href="#replace_trig">替换触发器</a></li>
</ul>
</li><li><a href="#incremental">增量式求值和懒惰求值</a></li>
<li><a href="#reflection">反射</a></li>
<li><a href="#ext_enums">广度(Extents)和枚举</a></li>
<li><a href="#other_res">相关资源</a></li>
<li><a href="#about_author">关于译者</a></li>
<li><a href="#feedback">译文Feedback</a></li>
</ul>
<p align="center"><a href="#top"><u>top</u></a></p>
<h3><a name="basic_types"></a>基本类型</h3>
<p>
JavaFX语言提供四种基本类型:<code>String(字符串)</code>、<code>Boolean(布尔)</code>、<code>Number(数值)</code>和<code>Integer(整数)</code>。这些类型相当于Java的如下类型:
</p>
<table style="border: medium groove ; margin-top: 5px;" cellpadding="5" cellspacing="5">
<tbody><tr><th></th></tr><tr><td><b><u>JavaFX</u></b></td>
<td><b><u>Java</u></b></td>
</tr>
<tr><td><code>String</code></td><td><code>java.lang.String</code></td></tr>
<tr><td><code>Boolean</code></td><td><code>java.lang.Boolean</code></td></tr>
<tr><td><code>Number</code></td><td><code>java.lang.Number</code></td></tr>
<tr><td><code>Integer</code></td><td><code>byte,short,int,long,BigInteger</code></td></tr>
</tbody></table>
<br>
<p><b>例如:</b></p>
<pre class="examplecode"> var s = "Hello";
s.toUpperCase(); // yields "HELLO";
s.substring(1); // yields "ello";
var n = 1.5;
n.intValue(); // yields 1
(1.5).intValue(); // yields 1
s.substring(n); // yields "ello"
var b = true;
b instanceof Boolean; // yields true
</pre>
<p></p>
<p>
在向Java方法传递参数或者从Java方法返回结果的时候,数值类型会自动执行强制类型转换。并且,在转换<code>Number</code>和<code>Integer</code>的时候还会进行隐式的强制截断。
</p>
<p align="center"><a href="#top"><u>top</u></a></p>
<h3><a name="calling_java"></a>调用Java对象</h3>
<p>
JavaFX可以导入Java类、创建新的Java对象、调用它们的方法,也可以实现Java的接口。下面的代码片断提供了一个示例:
</p>
<pre class="examplecode">
import javax.swing.JFrame;
import javax.swing.JButton;
import java.awt.event.ActionListener;
import java.lang.System;
var frame = new JFrame();
var button = new JButton("Press me");
frame.getContentPane().add(button);
button.addActionListener(new ActionListener() {
operation actionPerformed(event) {
System.out.println("You pressed me");
}
});
frame.pack();
frame.setVisible(true);
</pre>
<p></p>
运行上面的程序后,屏幕上显示如下内容:
<p></p>
<div style="margin-left: 100px;"><img src="JavaFX_Programming_Language_CN_files/frame.png" alt="Image of simple frame window with Press me button." width="123" height="57"></div>
<p></p>
<p>
当然,这并不是JavaFX推荐的创建图形用户界面的方式。下面的JavaFX代码实现了相同的效果:
</p>
<pre class="examplecode">
Frame {
content: Button {
text: "Press Me"
action: operation() {
System.out.println("You pressed me");
}
}
visible: true
}
</pre>
<p align="center"><a href="#top"><u>top</u></a></p>
<h3><a name="variables"></a>变量</h3>
<p>
在JavaFX中,<code>var</code>这个关键词用来声明变量。你可以在声明中指定变量的类型。然而,这在JavaFX中是可选的。如果你不指定类型,JavaFX解释器会根据它的用途推断变量的类型。变量声明使用如下格式:
</p>
<pre class="examplecode"> var <i>variableNam

ranyut
- 粉丝: 0
最新资源
- 大行业信息化趋势调查报告.doc
- 实用软件工程方法.doc
- 项目管理工作经验总结(20211212164739).pdf
- 基于单片机的多功能计步器.docx
- 小型校园网络规划与设计方案.doc
- 酒店无线网络方案.docx
- 在Excel中用数据有效性防止公式被修改【会计实务操作教程】.pptx
- 沈阳东东系统集成有限公司更改管理标准样本.doc
- 哈工程通信原理.doc
- 实验软件工程标准化.doc
- 基因工程的应用练习题.doc
- 我们提升项目管理的主要做法.doc
- 计算机综管方法.docx
- ascendc-api-adv-硬件开发资源
- 苏泊尔网络价格对比lei.pdf
- 面向构件化软件开发PPT课件.ppt
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈


