18新利最新登入Java是如何工作的gydF4y2Ba

通用java编程代码写在黑色的屏幕”border=
Java是一种流行的计算机语言。gydF4y2Bafunky-data /盖蒂图片社gydF4y2Ba

你可曾想过计算机程序如何工作的呢?18新利最新登入你有没有想学习如何编写你自己的电脑程序吗?18新利最新登入无论你是14岁,希望学习如何编写你的第一场比赛,或者你已经70岁了,好奇计算机编程已经有20年,这18新利最新登入篇文章是给你的。在这个版本的gydF4y2Ba18新利最新登入HowStuffWorksgydF4y2Ba,我将教你如何计算机程序教你如何编程的工作18新利最新登入gydF4y2BaJava编程语言gydF4y2Ba。gydF4y2Ba

为了教你电脑编程,从一开始我要做几个假设:gydF4y2Ba

广告gydF4y2Ba

  • 我假设你现在对计算机编程一无所知。如果你已经知道一些本文的第一部分将似乎小学。请跳过向前,直到你得到一些你不知道的事情。gydF4y2Ba
  • 我假设你gydF4y2Ba做gydF4y2Ba了解您所使用的计算机。也就是说,我将假定您已经知道如何编辑一个文件,拷贝和删除文件,重命名文件,在您的系统上找到信息18新利最新登入,等等。18luck手机登录gydF4y2Ba
  • 为简单起见,我将假设您使用的是一台机器运行Windows 95, 98, 2000, NT或XP。人们应该相对简单的其他操作系统运行在这些映射的概念。gydF4y2Ba
  • 我将假设您有一个渴望学习。gydF4y2Ba

所有的工具,你需要开始在Java编程免费在网上随处可见。也有大量的教育材料对于Java Web上可用,所以一旦你完成这篇文章你可以很容易的去学习来增加你的技能。你可以在这里学习Java编程不花一分钱在编译器,开发环境,阅读材料,等等。一旦你学习Java很容易学习其他语言,这是一个很好的起点。gydF4y2Ba

说到这些事,我们准备好了。让我们开始吧!gydF4y2Ba

一个术语gydF4y2Ba

请记住,我假设你对编程一无所知。这里有几个词汇表术语会让事情可以理解的:gydF4y2Ba

  • 计算机程序gydF4y2Ba——一个计算机程序是一组指令,告诉计算机做什么。指令可能告诉计算机添加一组数字,或比较两个数,并根据结果做出决定,等等。但计算机程序是一个简单的指令集计算机,像厨师的菜谱是一组指令或音符是一组指令的音乐家。计算机完全遵循你的指示,在这个过程中一些有用的东西——像对账或在屏幕上显示一个游戏或实现一个文字处理器。gydF4y2Ba
  • 编程语言gydF4y2Ba——为了让计算机识别你给它的指令,这些指令需要的语言编写的计算机理解——一种编程语言。有许多计算机编程语言Fortran, Cobol、基础,帕斯卡,gydF4y2BaCgydF4y2Ba、c++、Java、gydF4y2BaPerlgydF4y2Ba——就像有许多口语。他们都以不同的方式表达大约相同的概念。gydF4y2Ba
  • 编译器gydF4y2Ba——编译器转换一个计算机程序写在一个人类可读的计算机语言(比如Java)成一种电脑可以gydF4y2Ba执行gydF4y2Ba。你可能见过EXE文件在您的计算机上。这些EXE文件编译器的输出。它们包含gydF4y2Ba可执行文件gydF4y2Ba——机器可读的程序从人类可读的翻译程序。gydF4y2Ba

你为了开始编写计算机程序在一个叫做Java编程语言,你需要一个Java语言的编译器。下一节将指导您完成下载和安装一个编译器的过程。一旦你有了一个编译器,我们可以开始。这个过程需要几个小时,大部分时间是几大文件下载时间。你也需要大约40gydF4y2Ba兆字节gydF4y2Ba免费的gydF4y2Ba磁盘gydF4y2Ba空间(确保你有可用的空间在你开始之前)。gydF4y2Ba

广告gydF4y2Ba

下载Java编译器gydF4y2Ba

为了得到一个Java开发环境设置在您的机器上,你“开发”(写)计算机程序使用“开发环境”——你需要完成以下步骤:gydF4y2Ba

  1. 下载一个大文件包含Java开发环境(编译器和其他工具)。gydF4y2Ba
  2. 下载一个大文件包含Java文档。gydF4y2Ba
  3. 如果你不已经有WinZip(或同等)在您的机器上,您需要下载一个大文件包含WinZip和安装它。gydF4y2Ba
  4. 安装Java开发环境。gydF4y2Ba
  5. 安装文档。gydF4y2Ba
  6. 调整一些环境变量。gydF4y2Ba
  7. 测试所有东西。gydF4y2Ba

在开始之前,情况可能会更好些,如果你在临时目录创建一个新目录我们将下载的文件。我们将称之为gydF4y2Ba下载目录gydF4y2Ba。gydF4y2Ba

广告gydF4y2Ba

步骤1 -下载Java开发环境gydF4y2Ba

转到页gydF4y2Bahttp://java.sun.com/j2se/1.4.2/download.htmlgydF4y2Ba。下载SDK软件点击“下载J2SE SDK”链接。你将许可协议。18新利最新登入点击接受。选择您的gydF4y2Ba操作系统gydF4y2Ba和下载文件到您的下载目录。这是一个巨大的文件,需要几个小时在正常下载gydF4y2Ba电话调制解调器gydF4y2Ba。接下来的两个文件也大。gydF4y2Ba

步骤2 -下载Java文档gydF4y2Ba

通过选择您的操作系统下载的文档并单击SDK 1.4.1文档链接。gydF4y2Ba

步骤3,下载并安装WinZipgydF4y2Ba

如果你没有一个版本WinZip或一个等价的在您的机器上,进入页面gydF4y2Bahttp://www.winzip.com/gydF4y2Ba和下载一个评估WinZip的副本。运行EXE安装它。我们将用它来安装文档。gydF4y2Ba

步骤4——安装开发工具包gydF4y2Ba

运行j2sdk-1_4_1 - *。exe文件,您在步骤1中下载。它将自动解包并安装开发工具包。gydF4y2Ba

步骤5 -安装文档gydF4y2Ba

阅读安装说明文档。他们会指导你把文档文件相同的目录中,包含开发工具包安装。解压缩文档和它将下降到适当的地方。gydF4y2Ba

第六步,调整您的环境gydF4y2Ba

上的指示gydF4y2Ba这个页面gydF4y2Ba,你需要改变你的path变量。这是最容易通过打开一个ms - dos提示符然后输入路径的路径设置为当前。然后打开autoexec。蝙蝠在记事本和修改路径中指定的指令。gydF4y2Ba

步骤7 -测试gydF4y2Ba

现在你应该可以打开另一个ms - dos窗口和类型gydF4y2BajavacgydF4y2Ba。如果一切都设置正确,那么您应该看到一个两行blob的文字出来,告诉你如何使用18新利最新登入gydF4y2BajavacgydF4y2Ba。这意味着你已经准备好去。如果你看到消息“错误的命令或文件名”,这意味着你没有准备好。找出自己做错了什么,重读的安装说明。确保设置正确的路径和工作。回去重读程序员的信条,是持久的,直到问题解决。gydF4y2Ba

你现在自豪地拥有一台机器可以编译Java程序。你准备开始写软件!gydF4y2Ba

顺便说一下,你刚刚打开的一件事gydF4y2Ba演示gydF4y2Ba目录完整简洁的例子。所有的例子都可以运行,所以您可能希望找到目录和玩一些样品。他们中的许多人发出声音,所以一定要打开gydF4y2Ba演讲者gydF4y2Ba。要运行示例,找到页面的名字gydF4y2Baexample1.htmlgydF4y2Ba和加载到Web浏览器。gydF4y2Ba

你的第一个程序gydF4y2Ba

你的第一个程序将短期和甜的。它将创建一个绘图区和画一条斜线。创建这个项目你需要:gydF4y2Ba

  1. 打开记事本,输入(或剪切并粘贴)程序gydF4y2Ba
  2. 保存该项目gydF4y2Ba
  3. 编译程序的Java编译器创建一个gydF4y2BaJava appletgydF4y2Ba
  4. 解决任何问题gydF4y2Ba
  5. 创建一个HTML web页面“持有”创建的Java AppletgydF4y2Ba
  6. 运行Java小程序gydF4y2Ba

这是程序,我们将使用这个演示:gydF4y2Ba

广告gydF4y2Ba

进口java.awt.Graphics;公共类FirstApplet java.applet延伸。Applet{公共空涂料(图形g) {g。画直线(0,0,200,200);}}gydF4y2Ba

步骤1 -输入程序gydF4y2Ba

创建一个新目录来保存您的程序。打开记事本(或任何其他文本编辑器可以创建TXT文件)。项目类型或剪切并粘贴到记事本窗口。这是很重要的:当你输入程序,gydF4y2Ba例问题gydF4y2Ba。这意味着你必须输入大写字母和小写字母完全出现在节目中。回顾上面的程序员的信条。如果你不输入如下所示,它不会工作。18新利最新登入gydF4y2Ba

步骤2 -保存文件gydF4y2Ba

保存文件的文件名gydF4y2BaFirstApplet.javagydF4y2Ba在您在步骤1中创建的目录。gydF4y2Ba例问题gydF4y2Ba的文件名。确保“F”和“A”大写和所有其他字符小写,如图所示。18新利最新登入gydF4y2Ba

步骤3——编译程序gydF4y2Ba

打开一个ms - dos窗口。改变当前工作目录(cd)包含的目录gydF4y2BaFirstApplet.javagydF4y2Ba。类型:gydF4y2Ba

javac FirstApplet.javagydF4y2Ba

例问题gydF4y2Ba!要么它会工作,在这种情况下,没有将打印到窗口,或将会有错误。如果没有错误,一个名为FirstApplet的文件。类将创建的目录FirstApplet.java旁边。gydF4y2Ba

(确保文件保存到这个名字gydF4y2BaFirstApplet.javagydF4y2Ba而不是gydF4y2BaFirstApplet.java.txtgydF4y2Ba。这是最容易通过打字gydF4y2BadirgydF4y2Ba在ms - dos窗口和查看文件名称。如果它有一个gydF4y2Ba. txtgydF4y2Ba扩展,删除重命名文件。或者运行Windows资源管理器视图中选择选项菜单。确保“隐藏MD-DOS文件扩展名的文件类型注册“盒子不是检查,然后看看explorer的文件名。在必要时改变它。)gydF4y2Ba

步骤4——解决任何问题gydF4y2Ba

如果有错误,修复它们。比较你的程序上面的项目,让他们完全匹配。继续重新编译,直到你看到没有错误。如果gydF4y2BajavacgydF4y2Ba似乎不工作,回顾上一节和修复您的安装。gydF4y2Ba

第5步—创建一个HTML页面gydF4y2Ba

创建一个HTML页面applet。打开另一个记事本窗口。输入如下:gydF4y2Ba

< html > <身体> < = FirstApplet applet代码。类高度宽度= 200 = 200 > < / applet > < /身体> < / html >gydF4y2Ba

保存这个文件在同一目录的名称gydF4y2Baapplet.htmgydF4y2Ba。gydF4y2Ba

(如果你从来没有使用过HTML,请阅读gydF4y2Ba18新利最新登入一个网页是如何运作的吗gydF4y2Ba。的gydF4y2Ba小应用程序gydF4y2Ba标签是如何从一18新利最新登入个web页面访问Java applet。)gydF4y2Ba

步骤6 -运行AppletgydF4y2Ba

在ms - dos窗口中,键入:gydF4y2Ba

appletviewer applet.htmgydF4y2Ba

您应该看到一个对角线从左上角到右下角。gydF4y2Ba

把applet观众看到整个大一点。你也应该能够将HTML页面加载到任何现代浏览器比如网景的导航者或微软的Internet Explorer和看到大约同样的事情。gydF4y2Ba

您已经成功地创建了您的第一个程序! ! !gydF4y2Ba

理解刚刚发生了什么事gydF4y2Ba

所以刚才发生了什么?gydF4y2Ba

首先,你写一段代码非常简单gydF4y2BaJava appletgydF4y2Ba。applet是一个Java程序,它可以在Web浏览器中运行,而不是一个gydF4y2BaJava应用程序gydF4y2Ba,这是一个独立的程序,运行在本地机器(Java应用程序稍微复杂和不太受欢迎,所以我们将开始与applet)。我们编译applet使用gydF4y2BajavacgydF4y2Ba。然后,我们创建了一个非常简单的Web页面"持有" applet。我们使用appletgydF4y2BaappletviewergydF4y2Ba,但你可以简单地在浏览器中运行它。gydF4y2Ba

广告gydF4y2Ba

程序本身长约10行:gydF4y2Ba

进口java.awt.Graphics;公共类FirstApplet java.applet延伸。Applet{公共空涂料(图形g) {g。画直线(0,0,200,200);}}gydF4y2Ba

这是最简单的Java小程序可以创建。完全理解它你需要大量学习,特别是在面积gydF4y2Ba面向对象编程技术gydF4y2Ba。因为我假定你没有编程经验,我希望你能做的就是把你的注意力放在一个暂时在这个程序行:gydF4y2Ba

g。画直线(0,0,200,200);gydF4y2Ba

这是这个项目的工作。它吸引了对角线。其余的项目是脚手架,支持这一行,我们可以忽略脚手架。这里发生了什么是,我们告诉计算机画一条线从左上角(0,0)右下角(200、200)。电脑画就像我们告诉它。这是计算机编程的本质!gydF4y2Ba

(还要注意HTML页面,我们将applet的窗口的大小上面步骤5中有一个宽度为200和200)。gydF4y2Ba

在这个程序中,我们称为gydF4y2Ba方法gydF4y2Ba(或称。gydF4y2Ba函数gydF4y2Ba)称为gydF4y2Ba画直线gydF4y2Ba我们通过四个gydF4y2Ba参数gydF4y2Ba(0,0,200,200)。以一个分号。分号就像周期末尾的句子。行开始gydF4y2Bag。gydF4y2Ba,表示我们想要调用的方法命名gydF4y2Ba画直线gydF4y2Ba在特定的对象命名gydF4y2BaggydF4y2Ba(你可以看到一个排队是类的gydF4y2Ba图形gydF4y2Ba——我们将进入更详细地类的类和方法在本文后面)。gydF4y2Ba

一个方法是一个简单的命令,它告诉计算机做些什么。在这种情况下,gydF4y2Ba画直线gydF4y2Ba告诉计算机之间画一条线:指定的点(0,0)和(200、200)。你可以把窗口为0,0在左上角,配合积极的X和Y轴向右和向下延伸。每个点在屏幕上(每个gydF4y2Ba像素gydF4y2Ba)是一个增量。gydF4y2Ba

试着尝试通过使用不同的编号为四个参数。改变一个或两个号码,保存更改,重新编译gydF4y2BajavacgydF4y2Ba每次改变后并重新运行gydF4y2BaappletviewergydF4y2Ba,看看你发现。gydF4y2Ba

什么其他功能可用除了gydF4y2Ba画直线gydF4y2Ba吗?你觉得通过查看的文档gydF4y2Ba图形gydF4y2Ba类。当你安装了Java开发工具包和打开文档,其中一个文件卸载过程中gydF4y2Bajava.awt.Graphics.htmlgydF4y2Ba,它是在你的机器上。这是文件,解释了gydF4y2Ba图形gydF4y2Ba类。在我的机器上,这个文件的完全路径是D: \ \ java.awt.Graphics.html jdk1.1.7 \ docs \ api。在您的机器上的路径可能会略有不同,但接近——这取决于你哪里安装东西。找到该文件并打开它。向该文件的顶部有一个部分叫“指数方法。”This is a list of all of the methods this class supports. The画直线gydF4y2Ba方法就是其中之一,但你可以看到gydF4y2Ba许多gydF4y2Ba别人。你可以画等:gydF4y2Ba

  • 行gydF4y2Ba
  • 弧gydF4y2Ba
  • 椭圆gydF4y2Ba
  • 多边形gydF4y2Ba
  • 矩形gydF4y2Ba
  • 字符串gydF4y2Ba
  • 字符gydF4y2Ba

阅读并尝试尝试一些不同的方法来发现什么是可能的。例如,试试这段代码:gydF4y2Ba

g。画直线(0,0,200,200);g。绘制矩形(0,0,200,200);g。画直线(200,0,0,200);gydF4y2Ba

它将画一个盒子有两个对角线(一定要把窗口大到足以看到整个事情)。尝试其他形状。了解和尝试改变颜色gydF4y2Ba改变颜色gydF4y2Ba方法。例如:gydF4y2Ba

进口java.awt.Graphics;进口java.awt.Color;公共类FirstApplet java.applet延伸。Applet{公共空涂料(图形g) {g。改变颜色(Color.red); g.fillRect(0, 0, 200, 200); g.setColor(Color.black); g.drawLine(0, 0, 200, 200); g.drawLine(200, 0, 0, 200); } }

请注意添加新的gydF4y2Ba进口gydF4y2Ba行程序的第二行。这个项目的输出是这样的:gydF4y2Ba

一件事可能会通过你的头现在,“他怎么知道使用18新利最新登入gydF4y2BaColor.redgydF4y2Ba而不是简单的gydF4y2Ba红色的gydF4y2Ba,他是怎么知18新利最新登入道添加第二个gydF4y2Ba进口gydF4y2Ba行吗?”You learn things like that by example. Because I just showed you an example of how to call the改变颜色gydF4y2Ba方法,您现在知道,每当你想改变你将使用的颜色gydF4y2Ba颜色。gydF4y2Ba紧随其后的是一个颜色名称作为一个参数gydF4y2Ba改变颜色gydF4y2Ba方法,您将添加适当的gydF4y2Ba进口gydF4y2Ba行程序的顶部。如果你看了gydF4y2Ba改变颜色gydF4y2Ba它有一个链接,会告诉你的gydF4y2Ba颜色gydF4y2Ba类,这是一个列表的所有有效的颜色名称以及创造新的技术(匿名)颜色。你读过这些信息,你将它存储在18luck手机登录你的脑海中,现在你知道如何用Java改变颜色。18新利最新登入这是成为一个计算机程序员的本质——你学习技术和记住他们在接下来的程序编写。你学习的技术通过阅读一个例子(像)或通过阅读文档或通过查看示例代码(如演示目录)。如果你有一个gydF4y2Ba大脑gydF4y2Ba喜欢探索,学习和记住一些事情,你将会喜欢上编程!gydF4y2Ba

在本部分中,您已经了解了如何编写线性顺序代码,代码块由方法调用从顶部18新利最新登入向底部和工作(试着画一个线gydF4y2Ba之前gydF4y2Ba你画的红色矩形,看会发生什么——它将由矩形,使看不见的。在代码序列的顺序是很重要的)。序贯行代码形式的基本核心的计算机程序。实验的所有不同的绘图方法,看看你会发现什么。gydF4y2Ba

错误和调试gydF4y2Ba

一件事你会注意到当你学习编程是你往往会犯很多错误和假设导致程序:1)没有编译,或2)生成输出,你别指望它执行的时候。这些问题被称为gydF4y2Ba错误gydF4y2Ba,并删除它们的行为gydF4y2Ba调试gydF4y2Ba。大约一半的任何程序员花时间调试。gydF4y2Ba

你会有足够的时间和机会来创建您自己的缺陷,但要获得更熟悉的可能性让我们创建一个。在你的程序中,试着擦除一个分号结束时,试着编译程序gydF4y2BajavacgydF4y2Ba。编译器会给你一个错误消息。这被称为gydF4y2Ba编译错误gydF4y2Ba之前,你必须消除所有他们可以执行你的计划。试着拼错一个函数的名字,留下了一个“{”或消除的gydF4y2Ba进口gydF4y2Ba行来适应不同的编译器错误。你第一次看到某种类型的编译器错误可以令人沮丧,但这样的尝试,与已知的错误您创建的目的——你可以熟悉许多常见的错误。gydF4y2Ba

广告gydF4y2Ba

一个bug,也被称为一个执行(运行时)错误,当程序运行良好的运行,但不会产生输出你计划生产。例如,这段代码会产生一个红色的矩形:有两个对角线gydF4y2Ba

g.setColor (Color.red);g。fillRect (0, 0, 200, 200);g.setColor (Color.black);g。画直线(0,0,200,200);g。画直线(200,0,0,200);gydF4y2Ba

下面的代码,另一方面,产生的红色矩形(涵盖在两行):gydF4y2Ba

g.setColor (Color.black);g。画直线(0,0,200,200);g。画直线(200,0,0,200);g.setColor (Color.red);g。fillRect (0, 0, 200, 200);gydF4y2Ba

代码几乎完全相同的但它执行时看起来完全不同。如果你期待能看到两个对角线,然后在第二种情况下包含bug的代码。gydF4y2Ba

这是另一个例子:gydF4y2Ba

g。画直线(0,0,200,200);g。绘制矩形(0,0,200,200);g。画直线(200,0,0,200);gydF4y2Ba

这段代码生成一个黑框和两个对角线概述。下一段代码只产生一个对角线:gydF4y2Ba

g。画直线(0,0,200,200);g。绘制矩形(0,0,200,200);g。画直线(0 200 0,200);gydF4y2Ba

再一次,如果你将看到两个对角线,那么第二段代码包含一个错误(看第二段代码直到你理解错了)。这种缺陷可以需要很长时间才能找到,因为它是微妙的。gydF4y2Ba

你会有足够的时间来练习发现自己的错误。程序员的平均花费大约一半的他或她的时间跟踪,发现和消除bug。尽量不要气馁时发生——它们正常编程生活的一部分。gydF4y2Ba

变量gydF4y2Ba

所有程序使用gydF4y2Ba变量gydF4y2Ba临时保存的数据。例如,如果在一个程序中你问一个用户输入一个数字,你将它存储在一个变量,这样您就可以使用它。gydF4y2Ba

变量必须gydF4y2Ba定义gydF4y2Ba(或gydF4y2Ba宣布gydF4y2Ba)在一个程序中可以使用它们之前,你必须给每个变量特定类型。例如,您可以声明一个变量的类型,允许它持有数量,和另一个变量类型,允许它保持一个人的名字。(因为Java使用之前需要明确定义变量和状态值的类型你计划存储在一个变量中,Java称为gydF4y2Ba强类型gydF4y2Ba语言。某些语言没有这些要求。在一般情况下,在创建大型程序时,强类型倾向于减少编程错误。)gydF4y2Ba

广告gydF4y2Ba

进口java.awt.Graphics;进口java.awt.Color;公共类FirstApplet java.applet延伸。Applet{公共空涂料(图形g) {int宽度= 200;int高度= 200;g。绘制矩形(0,0,宽度、高度);g。画直线(0,0,宽度、高度);g。drawLine(width, 0, 0, height); } }

在这个程序中,我们已经声明两个变量命名gydF4y2Ba宽度gydF4y2Ba和gydF4y2Ba高度gydF4y2Ba。我们已经宣布他们的类型gydF4y2BaintgydF4y2Ba。一个gydF4y2BaintgydF4y2Ba变量可以保存一个整数(整数,如1、2、3),我们有gydF4y2Ba初始化gydF4y2Ba这两个变量为200。我们可以简单地说:gydF4y2Ba

int宽度;宽度= 200;int高度;身高= 200;gydF4y2Ba

第一种形式是有点更快地类型。gydF4y2Ba

首次设置一个变量值的行为gydF4y2Ba初始化gydF4y2Ba变量。一个通用的编程错误发生在你忘了初始化一个变量。发现错误,试着消除初始化代码的一部分(“= 200”部分)和重新编译程序来看看会发生什么。你会发现编译器抱怨这个问题。顺便说一下,这是一个非常不错的功能。它会节省你大量的浪费时间。gydF4y2Ba

有两种类型的变量在Java——简单的(gydF4y2Ba原始的gydF4y2Ba)变量和gydF4y2Ba类gydF4y2Ba。gydF4y2Ba

的gydF4y2BaintgydF4y2Ba类型是简单。变量可以保存一个数字。这是它所能做的一切。你声明一个gydF4y2BaintgydF4y2Ba,将其设置为一个值并使用它。gydF4y2Ba类gydF4y2Ba,另一方面,可以包含多个部分,使它们更容易使用的方法。一个很好的例子是一个简单的类gydF4y2Ba矩形gydF4y2Ba类,所以让我们开始。gydF4y2Ba

程序的局限性之一,到目前为止我们一直在努力的事实是它假设是200×200像素的窗口。如果我们想问窗口”,你是多大?18新利最新登入”,然后我们的矩形和对角线的大小,以适合吗?如果你回去看的文档页面gydF4y2Ba图形gydF4y2Ba类(java.awt.Graphics。html文件,列出了所有可用的函数),你会发现其中的一个功能gydF4y2BagetClipBoundsgydF4y2Ba。点击这个函数名可以看到完整的描述。这个函数,而是不接受参数gydF4y2Ba返回gydF4y2Ba一个类型的值gydF4y2Ba矩形gydF4y2Ba。矩形它返回包含可用的绘图区域的宽度和高度。如果你点击gydF4y2Ba矩形gydF4y2Ba在这个文档页面您将文档页面gydF4y2Ba矩形gydF4y2Ba类(java.awt.Graphics.html)。在变量指数部分页面的顶部,你会发现这类包含四个变量命名为x, y,宽度和高度分别。因此,我们要做的是剪辑边界矩形使用gydF4y2BagetClipBoundsgydF4y2Ba然后提取矩形的宽度和高度,并保存的值gydF4y2Ba宽度gydF4y2Ba和gydF4y2Ba高度gydF4y2Ba我们创建了在上一个示例中,变量是这样的:gydF4y2Ba

进口java.awt.Graphics;进口java.awt.Color;进口java.awt.Rectangle;公共类FirstApplet java.applet延伸。Applet{公共空涂料(图形g) {int宽度;int高度;矩形r;r = g.getClipBounds ();宽度= r。宽度- 1; height = r.height - 1; g.drawRect(0, 0, width, height); g.drawLine(0, 0, width, height); g.drawLine(width, 0, 0, height); } }

当您运行这个例子,你会注意到的是,矩形和对角线符合绘图区域。另外,当你改变窗口的大小,矩形和对角线重绘自己自动在新尺寸。有五个新概念引入在这段代码中,我们来看看:gydF4y2Ba

  1. 首先,因为我们使用矩形类,我们需要导入gydF4y2Bajava.awt.RectanglegydF4y2Ba在程序的第三行。gydF4y2Ba
  2. 我们在这个项目已经宣布三个变量。两个(gydF4y2Ba宽度gydF4y2Ba和gydF4y2Ba高度gydF4y2Ba类型的)gydF4y2BaintgydF4y2Ba和一个(gydF4y2BargydF4y2Ba)的类型是矩形。gydF4y2Ba
  3. 我们使用了gydF4y2BagetClipBoundsgydF4y2Ba函数绘图区域的大小。它不接受参数我们通过它(“()”),但它gydF4y2Ba返回gydF4y2Ba一个长方形。我们写道,“r = g.getClipBounds();”说,“请将返回的矩形变量gydF4y2BargydF4y2Ba。”gydF4y2Ba
  4. 的变量gydF4y2BargydF4y2Ba类的矩形,实际上包含了四个变量x, y,宽度,高度(你学习这些名字通过阅读的文档矩形类)。访问你使用“。”(dot) operator. So the phrase "r.width" says, "Inside the variablergydF4y2Ba检索的值命名gydF4y2Ba宽度gydF4y2Ba”。这个值放置到我们本地变量gydF4y2Ba宽度gydF4y2Ba。在这个过程中,我们减去1。尝试把减法,看看会发生什么。也试试减去5,看看会发生什么。gydF4y2Ba
  5. 最后,我们使用gydF4y2Ba宽度gydF4y2Ba和gydF4y2Ba高度gydF4y2Ba在图的功能。gydF4y2Ba

此时通常问的一个问题是,“我们真的需要声明变量命名gydF4y2Ba宽度gydF4y2Ba和gydF4y2Ba高度gydF4y2Ba?”答案是,“没有。”We could have typedr。宽度- 1gydF4y2Ba直接进入绘图功能。创建变量只会让事情更容易阅读,也因此陷入一种良好习惯。gydF4y2Ba

Java支持几个简单的变量类型。这里有三个最常见的:gydF4y2Ba

  • intgydF4y2Ba-整数(整数)值(1、2、3……)gydF4y2Ba
  • 浮动gydF4y2Ba例如,-十进制值(3.14159)gydF4y2Ba
  • 字符gydF4y2Ba字值(a, b, c…)gydF4y2Ba

您可以执行数学操作简单类型。Java理解gydF4y2Ba+gydF4y2Ba(添加),gydF4y2Ba- - - - - -gydF4y2Ba(减法),gydF4y2Ba*gydF4y2Ba(乘法),gydF4y2Ba/gydF4y2Ba(部门)和其他几个人。这里有一个例子如何在程序中使用这些操作。18新利最新登入假设你想计算一个球体的体积直径10英尺。下面的代码将处理它:gydF4y2Ba

浮动直径= 10;浮动半径;浮动量;半径=直径/ 2.0;体积= 4.0/3.0 * 3.14159 * * *半径半径;gydF4y2Ba

第一个计算说,“把变量中的值命名gydF4y2Ba直径gydF4y2Ba2.0和地点的结果变量命名gydF4y2Ba半径gydF4y2Ba”。您可以看到“=”在这里签字意味着,“地方从右边的计算结果为左边的变量命名。”gydF4y2Ba

循环gydF4y2Ba

的一件事,电脑做很好执行重复计算或操作。在前面的章节中,我们已经看到了如何编写“顺序代码块,所以接下来我们应该讨论的技18新利最新登入术是使一个连续的代码块反复发生。gydF4y2Ba

例如,假设我问你画网格图顶部的页面。gydF4y2Ba

广告gydF4y2Ba

一个很好的起点是画横线。gydF4y2Ba

画线的一种方法是创建一个顺序的代码块:gydF4y2Ba

进口java.awt.Graphics;公共类FirstApplet java.applet延伸。Applet{公共空涂料(图形g) {int y;y = 10;g。画直线(10,210年y, y);y = y + 25;g。画直线(10,210年y, y);y = y + 25; g.drawLine(10, y, 210, y); y = y + 25; g.drawLine(10, y, 210, y); y = y + 25; g.drawLine(10, y, 210, y); y = y + 25; g.drawLine(10, y, 210, y); y = y + 25; g.drawLine(10, y, 210, y); y = y + 25; g.drawLine(10, y, 210, y); y = y + 25; g.drawLine(10, y, 210, y); } }

(对于一些新程序员,声明“y = y + 25;“看起来奇怪他们第一次看到它。这意味着,“把变量的值目前gydF4y2BaygydF4y2Ba25,添加它并将结果回变量gydF4y2BaygydF4y2Ba”。所以如果y包含10行执行之前,它将包含35后立即执行。)gydF4y2Ba

大多数人看这段代码立即注意到它包含相同的两行重复一遍又一遍。在这种特殊情况下重复不是那么糟糕,但你可以想象,如果您想创建一个网格与成千上万的行和列,这种方法会使方案制定非常累人。此问题的解决方案gydF4y2Ba循环gydF4y2Ba,如下所示:18新利最新登入gydF4y2Ba

进口java.awt.Graphics;公共类FirstApplet java.applet延伸。Applet{公共空涂料(图形g) {int y;y = 10;而(y < = 210) {g。画直线(10, y, 210, y); y = y + 25; } } }

当你运行这个程序时,你将看到它吸引9长横线200像素。gydF4y2Ba

的gydF4y2Ba而gydF4y2Ba用Java语句是一个循环语句。该声明告诉Java表现在以下方式:在gydF4y2Ba而gydF4y2Ba声明中,Java看着表达式的括号,问道,“是gydF4y2BaygydF4y2Ba小于或等于210 ?”gydF4y2Ba

  • 如果答案是肯定的,那么Java进入代码块将由括号“{”和“}”。循环的部分发生在代码块的结束。当Java到达结束括号,循环的gydF4y2Ba而gydF4y2Ba再次声明,问的问题。这个循环序列可能发生很多次了。gydF4y2Ba
  • 如果答案是否定的,它跳过代码括号,括号和仍在继续。gydF4y2Ba

所以你可以看到,当你运行这个程序,最初gydF4y2BaygydF4y2Ba是10。十是不到210,所以Java输入块的括号,画一条线从(10,10)(210年,10),集gydF4y2BaygydF4y2Ba35然后返回到gydF4y2Ba而gydF4y2Ba声明。35是不到210,所以Java输入块的括号,画一条线从(10,35)(210年,35),集gydF4y2BaygydF4y2Ba到60,然后返回到gydF4y2Ba而gydF4y2Ba声明。这个序列重复直到gydF4y2BaygydF4y2Ba最终要大于210年。然后程序退出。gydF4y2Ba

我们可以完成我们的网格通过添加第二个循环程序,像这样:gydF4y2Ba

进口java.awt.Graphics;公共类FirstApplet java.applet延伸。Applet{公共空涂料(图形g) {int x, y;y = 10;而(y < = 210) {g。画直线(10, y, 210, y); y = y + 25; } x = 10; while (x <= 210) { g.drawLine(x, 10, x, 210); x = x + 25; } } }

你可以看到gydF4y2Ba而gydF4y2Ba声明有三个部分:gydF4y2Ba

  • 有一个gydF4y2Ba初始化步骤gydF4y2Bay设置为10。gydF4y2Ba
  • 然后有一个gydF4y2Ba评估步骤gydF4y2Ba括号内的声明。gydF4y2Ba
  • 然后,在同时声明有一个gydF4y2Ba增量步gydF4y2Ba增加y的值。gydF4y2Ba

Java支持的另一种方法做同样的事情,是一个比一个更紧凑gydF4y2Ba而gydF4y2Ba声明。它被称为gydF4y2Ba为gydF4y2Ba声明。如果你有一个gydF4y2Ba而gydF4y2Ba这样的语句:gydF4y2Ba

y = 10;而(y < = 210) {g。画直线(10, y, 210, y); y = y + 25; }

然后相当于gydF4y2Ba为gydF4y2Ba声明是这样的:gydF4y2Ba

(y = 10;y < = 210;y = y + 25) {g。画直线(10, y, 210, y); }

您可以看到,所有的gydF4y2Ba为gydF4y2Ba语句的作用是浓缩的初始化、评估和增加线路短,一行。它只是缩短了程序编写,仅此而已。gydF4y2Ba

虽然我们在这里,两个快速点关于循环:gydF4y2Ba

  • 在许多情况下,这将是初始化一样简单gydF4y2BaygydF4y2Ba到210,然后衰减25每通过一次循环。评价会问,“是gydF4y2BaygydF4y2Ba大于或等于10 ?”的choice is yours. Most people find it easier to add than subtract in their heads, but you might be different.
  • 增量的步骤是非常重要的。假设你不小心遗漏的部分说“y = y + 25;“内部循环。会发生什么事的价值吗gydF4y2BaygydF4y2Ba永远不会改变,它总是10。所以它永远不会成为永远大于210和循环将继续(或直到你停止它通过关闭电脑或关闭窗口)。这种情况被称为一个gydF4y2Ba无限循环gydF4y2Ba。这是很常见的一个错误。gydF4y2Ba

与循环练习,试着写程序得出以下数据:gydF4y2Ba

有关Java的更多信息和其他18luck手机登录电脑编程语言,看看下一个页面上的链接。gydF4y2Ba

Baidu