版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1第一章计算机、程序和Java概述回顾计算机的基本组成、程序和操作系统(第1.2-1.4节)。探究Java与万维网(WorldWideWeb)之间的关系(第1.5节)。区分术语API、IDE和JDK(第1.6节)。编写一个简单的Java程序(第1.7节)。在控制台上显示输出(第1.7节)。解释Java程序的基本语法(第1.7节)。创建、编译和运行Java程序(第1.8节)。(GUI)使用JOptionPane输出对话框显示输出结果(第1.9节)。2学习目标3什么是计算机?计算机包括中央处理器、内存、硬盘、软盘、显示器、打印机和通信设备。4CPU中央处理器(CPU)是计算机的大脑。它从内存中获取指令然后执行它们。它的速度通常用兆赫(MHz)表示,而1兆赫兹相当于每秒1百兆脉冲。CPU的速度还在不断提高,如果现在你去买一台PC机,你可以买到Intel公司的奔腾4处理器,速度可达到3GHz(1GHz相当于1000兆赫)。5内存内存是存储CPU要执行的数据和程序指令的设备。内存单元是由字节(bite)构成的有序序列,每字节由8比特组成。程序及其所需数据必须在它们被执行前放入内存。内存中的字节内容永远非空,但它的原始内容可能对于你的程序来说是毫无意义的。一旦新的信息被放入内存字节,那么该字节的当前内容就会丢失。各种类型的数据,例如:数字、字符和字符串,都被编码成比特(0和1)序列。计算机利用0和1是因为数字设备有两个稳定状态,习惯上这两个状态被认为是0和1。程序员不需要关心数据的编码和解码,这些都是由系统根据编码表自动完成的。这类编码表有很多种。例如:字符“J”是用一个字节01001010来表示的。像3这样的小数字可以存储在单个字节中。如果要存储一个单字节放不下的大数字,计算机需要使用几个相邻的字节。任何两个数据都不能共享或分割同一个字节。字节是最小的存储单元。6如何存储数据?7存储设备内存是不能长久保存数据的,因为断电时信息就会丢失。程序和数据都会被永久地存放在存储设备上,当计算机确实需要它们时再被移入内存
。主要的存储设备有三种:磁盘驱动器(硬盘和软盘)、光盘驱动器(只读光盘CD-R和可擦写光盘CD-RW)、磁带驱动器。8输出设备:显示器显示器显示信息(文本和图形)。分辨率和点距决定了显示器的质量。9显示器的分辨率和点距分辩率(
resolution
)是指每平方英寸的像素个数。像素(“图像元素”的简称)是指屏幕上形成图像的小点。分辨率可以手动设置。分辨率越高,图像越锐化、越清晰。但是如果在一个小屏幕上设置一个很高的分辨率,图像可能会很小。PC显示器通常为15英寸、17英寸、19英寸或21英寸。对于15英寸的显示屏,合适的分辨率一般设置为宽640480像素(307,200像素)。分辩率点距是指像素之间的空间距离,点距越小,显示效果越好。点距10通信设备一般的调制解调器(
regularmodem
)使用的是电话线,传播速度可以高达56,000bps(每秒比特数)。DSL
(数字用户线)也使用电话但传播速度比一般的调制解调器快20倍。电缆调制解调器利用电缆公司维护的电视电缆进行数据传输,
速度和DSL一样快。网络接口卡(NIC)是将计算机接入局域网(LAN)的设备。局域网(LAN)通常用于企业、大学、和政府组织。一种称为10BaseT
的典型NIC能够以10Mbps(Mbps表示每秒百万比特)的速度传输数据。计算机程序,也被称为软件,是发给计算机的指令。你可以通过程序告诉计算机该做什么。没有程序,计算机只是一个空机器。计算机不懂人类语言,所以你需要使用计算机和计算机进行沟通。程序就是用计算机语言编写的。11程序机器语言汇编语言高级语言12程序语言机器语言(Machinelanguage)是最初植入每台计算机的一套原始指令。因为这些指令都是以二进制代码形式存在,所以,你不得不输入各种不同指令的二进制代码。使用机器语言进行程序设计是一个非常单调乏味的过程。除此之外,程序也是非常难以读懂和修改的。例如:为了进行两数相加,你也许要写成如下二进制形式
:1101101010011010机器语言汇编语言高级语言13程序语言汇编语言的出现使得程序设计变得更加容易。由于计算机不理解汇编语言,所以需要使用一种被称为汇编器的程序将汇编语言程序转换为机器代码。例如:为进行两数相加,你也许会用汇编语言编写如下所示的一条指令:ADDF3R1,R2,R3机器语言汇编语言高级语言14程序语言高级语言(
high-levellanguages)很像英语,易于学习和编写程序。例如,下面是计算半径为5的圆的面积的高级语句:
area=5*5*3.1415;
COBOL(面向商业的通用语言)FORTRAN(公式翻译)BASIC(初学者通用符号指令代码)Pascal(以BlaisePascal命名)Ada(以AdaLovelace明名)C(由B的设计者开发)
VisualBasic(Microsoft公司开发的类似Basic的可视化语言)Delphi(Borland公司开发的类似Pascal的可视化语言)C++(基于C语言的一种面向对象语言)C#(Microsoft公司开发的类似Java的语言)Java(本书使用的语言)15流行的高级语言使用高级语言编写的程序被称为源程序(sourceprogram)。由于计算机不能理解源程序,所以要使用一种被称为编译器(compiler)的程序将源程序翻译成被称为目标程序的机器语言程序。然后通常会与其它辅助的库代码进行链接,构成可执行文件,该文件可以在机器上运行。16编译源代码操作系统(OS)是管理和控制计算机的动作的程序。你可能使用过Windows98、NT、2000、XP或ME。Windows是当前最流行的PC操作系统。如果没有操作系统,像网络浏览器和字处理程序这样的应用程序就不能运行。17操作系统18为什么选择Java?答案是Java可以让用户为服务器、台式机和小的手持设备开发和部署互联网应用程序。计算技术的未来日益受到互联网(Internet)的影响,而Java肯定会在其中占很大比例。Java是互联网编程语言。Java是功能完善的程序设计语言Java是互联网程序设计语言Java能用来开发Web应用程序JavaAppletsJavaWeb应用程序Java也可以用来为像Palm和手机这样的手持设备开发应用程序19Java、Web以及其它20
Java多样性示例(Applets)21PDA和手机JamesGosling和SunMicrosystemsOak(橡树)Java、May20,1995、SunWorldHotJava——第一个Java网页浏览器关于早期历史的网站:22Java的历史/features/1998/05/birthday.htmlJava是简单的Java是面向对象的Java是分布式的Java是解释的Java是健壮的Java是安全的Java是结构中立的Java是可移植的Java是高性能的Java是多线程的Java是动态的23
Java的特性CompanionWebsite/liang/intro8e/JavaCharacteristics.pdfJava是简单的Java是面向对象的Java是分布式的Java是解释型的Java是健壮的Java是安全的Java是结构中立的Java是可移植的Java是高性能的Java是多线程的Java是动态的24
Java的特性Java是部分效仿C++,但是进行了大量的简化和提高。一些人称Java为“C++--”,因为它像C++,但功能更强大而且缺陷更少。CompanionWebsiteJava是简单的Java是面向对象的
Java是分布式的Java是解释型的Java是健壮的Java是安全的Java是结构中立的Java是可移植的Java是高性能的Java是多线程的Java是动态的25
Java的特性面向对象是Java的固有特性。尽管许多面向对象的语言都是由面向过程发展而来的,但Java在设计之初就是面向对象的。面向对象的程序设计(OOP)是很受欢迎的程序设计方法,它正逐步取代传统的面向过程的程序设计方法。软件开发的核心问题之一就是实现代码的重用。面向对象程序设计通过封装、继承和多态提供了巨大的灵活性、模块化、清晰化和可重用性。CompanionWebsiteJava是简单的Java是面向对象的Java是分布式的Java是解释型的Java是健壮的Java是安全的Java是结构中立的Java是可移植的Java是高性能的Java是多线程的Java是动态的26
Java的特性分布式计算涉及数台电脑同时在一个网络上工作。
Java就是为使分布式计算更加简单而设计的。由于网络能力是作为一种固有特性集成在Java中的,所以编写网络程序就像向文件发送数据和从文件接收数据一样简单。CompanionWebsiteJava是简单的Java是面向对象的Java是分布式的Java是解释型的
Java是健壮的Java是安全的Java是结构中立的Java是可移植的Java是高性能的Java是多线程的Java是动态的27
Java的特性你需要一个解释器来运行
Java程序。这些程序被编译到一个被称为字节码的Java虚拟机代码中。这些字节码是独立于机器的,它可以运行在任何一个有Java解释器的机器上,而Java解释器是Java虚拟机(JVM)的一部分。CompanionWebsiteJava是简单的Java是面向对象的Java是分布式的Java是解释型的Java是健壮的Java是安全的Java是结构中立的Java是可移植的Java是高性能的Java是多线程的Java是动态的28
Java的特性Java编译器检测出许多别的语言只有在首次执行的时候才会指出的问题。Java已经清除了几种在其它语言中被发现易于出错的编程结构。Java具有运行时异常处理特性,它为健壮性提供了编程支持。CompanionWebsiteJava是简单的Java是面向对象的Java是分布式的Java是解释型的Java是健壮的Java是安全的Java是结构中立的Java是可移植的Java是高性能的Java是多线程的Java是动态的29
Java的特性Java实现了几种安全机制以保护你的系统遭受危险程序的破坏。CompanionWebsiteJava是简单的Java是面向对象的Java是分布式的Java是解释型的Java是健壮的Java是安全的Java是结构中立的Java是可移植的Java是高性能的Java是多线程的Java是动态的30
Java的特性一次编写,到处运行。通过
Java虚拟机(JVM),你可以编写出能够在任何平台上运行的程序。CompanionWebsiteJava是简单的Java是面向对象的Java是分布式的Java是解释型的Java是健壮的Java是安全的Java是结构中立的Java是可移植的Java是高性能的Java是多线程的Java是动态的31
Java的特性因为
Java是结构中立的,所以Java的程序是可移植的。
他们可以不经过重新编译而在任何一个机器上运行。CompanionWebsiteJava是简单的Java是面向对象的
Java是分布式的Java是解释型的Java是健壮的Java是安全的Java是结构中立的Java是可移植的Java是高性能的Java是多线程的Java是动态的32
Java的特性Java的高性能体现在因为Java是体系结构中立的,所以Java程序是移植的。它们可以不经过重新编译而在任何一个机器上运行。CompanionWebsiteJava是简单的Java是面向对象的
Java是分布式的Java是解释型的Java是健壮的Java是安全的Java是结构中立的Java是可移植的Java是高性能的Java是多线程的Java是动态的33
Java的特性多线程程序设计是平滑地集成在
Java中的,尽管在其它语言中你必须通过向操作系统调用特定过程才能实现多线程。CompanionWebsiteJava是简单的Java是面向对象的Java是分布式的Java是解释型的Java是健壮的Java是安全的Java是结构中立的Java是可移植的Java是高性能的Java是多线程的Java是动态的34
Java的特性Java可以适应社会的进步。新的代码可以在其中运行而不用重新编译.因而不需要开发者去开发新的软件版本,用户也不需要去安装和学习新的软件版本。
新的特点可以根据需要透明地合并进去。CompanionWebsiteJDK1.02(1995)JDK1.1(1996)JDK1.2(1998)JDK1.3(2000)JDK1.4(2002)JDK1.5(2004)又被称为JDK5或Java5JDK1.6(2006)又被称为JDK6或Java6JDK1.7(可能在2010)又被称为JDK7或Java735JDK版本Java标准版(J2SE)J2SE可以用来发展客户端的独立应用程序或applet小程序。Java企业版(J2EE)J2EE可以用来开发服务端的应用程序,例如:Javaservlet和JavaServerpages。Java微型版(J2ME)J2ME可以用来为像手机这样的移动设备开发应用软件。本书使用J2SE来介绍Java应用程序设计。36JDK版本Sun公司开源的NetBeansIBM公司开源的Eclipse37流行的Java集成开发环境//ThisprogramprintsWelcometoJava!publicclassWelcome{ publicstaticvoidmain(String[]args){System.out.println("WelcometoJava!");}}38一个简单的Java程序RunWelcome程序清单1.1重要提示:(1)为了启用按钮,你必须下载完整的幻灯片文件slide.zip,并且将这些文件解压到一个目录中(例如:c:\slide)。(2)你必须已经安装好JDK,并且将JDK的bin目录设置在你的环境路径中(例如:在你的环境路径中有c:\ProgramFiles\java\jdk1.6.0_14\bin使用记事本,在DOS提示符下敲入:
notepadWelcome.java39使用记事本创建和编辑使用写字板,在DOS提示符下敲入:writeWelcome.java40使用写字板创建和编译41创建、编译和运行程序你可以把一个源程序移植到任何一个有适当编译器的机器上。但是,源程序必须重新编译,因为目标程序只能在特定的机器上运行。现在的计算机都是通过网络互联在一起工作的。Java被设计成能在任何平台上运行目标程序。有了Java,一旦你写好一个程序,并把它编译成被称为字节码(bytecode)的特别类型的目标代码。然后,这些字节码就能在任何一个带有Java虚拟机的计算机上运行。Java虚拟机是一个解释Java字节码的软件。42编译Java源代码43跟踪程序的执行//ThisprogramprintsWelcometoJava!publicclassWelcome{ publicstaticvoidmain(String[]args){System.out.println("WelcometoJava!");}}输入主方法动画44跟踪程序的执行//ThisprogramprintsWelcometoJava!publicclassWelcome{ publicstaticvoidmain(String[]args){System.out.println("WelcometoJava!");}}执行语句动画45跟踪程序的执行//ThisprogramprintsWelcometoJava!publicclassWelcome{ publicstaticvoidmain(String[]args){System.out.println("WelcometoJava!");}}动画在控制台上打印一条消息46两个简单的例子RunWelcome1RunComputeExpression参见补充材料I.B学习安装和配置JDK参见补充材料I.C有从命令行窗口编译和运行Java的详细内容/liang/intro8e47配套网站上的补充材料配套网站设置path为JDK的bin目录路径设置path=c:\ProgramFiles\java\jdk1.6.0\bin设置classpath包含当前目录setclasspath=.编译javacWelcome.java运行javaWelcome48在命令行窗口中编译和运行Java配套网站详细信息参见网站的补充材料II.A49在写字板中编译和运行Java
配套网站详细信息参见网站的补充材料II.H
50在JBuilder中编译和运行Java
配套网站详细信息参见网站的补充材料I.D
51在NetBeans中编译和运行Java配套网站注释保留字修饰符语句块类方法主方法52剖析Java程序行注释:行注释是在单行上最前面加两个斜杠(//)表示注释某行。段注释:段注释是在一行或多行中用/*与*/括住某一段表示注释某段。53注释javadoc注释:javadoc注释是以/**
开始,以*/结束。它们被用来记录类、数据以及方法。通过使用JDK的javadoc
命令,它们可以被提取到一个HTML文件中。
Java中有三种注释。保留字或关键字是对编译器有特定含义的单词,它们是不能在程序中用于其它目的的。例如:当编译器看到单词class,它就会明白class后面的单词就是这个类的名字。程序清单1.1中的其它保留字还有public、static和void。它们的用法将会在本书后面讲述。54保留字Java使用某些被称作修饰符的保留字指明数据、方法以及类的属性以及如何使用它们。
修饰符的例子有public和static。其它修饰符有private、final、abstract和protected。公共数据、方法或类能被其它程序访问。私有的数据或方法不能被其它程序访问。修饰符将在第6章“对象与类”中讨论。55修饰符一个语句代表一个动作或一系列动作。在程序清单1.1的程序中语句System.out.println(“WelcometoJava!”)是一个输出问候语“WelcometoJava!”的语句。Java的每条语句都以分号(;)结束。56语句57块程序的一对花括号将程序中的组一段代码括起来形成一个块。类是Java的必要组成部分。类是对象的模板或蓝图。要编写
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年度体育赛事个人承包运营管理协议3篇
- 二零二五年度危险化学品安全责任协议书专业版3篇
- 二零二五年度企业实习生就业指导与职业规划协议9篇
- 2024年混凝土增强剂购买合同
- 报关年度述职报告
- 2025年度水电装修施工合同(含环保材料采购)3篇
- 二零二五年学校食堂伙食承包与食品安全责任书3篇
- 2024年终止婚姻双方和解合同
- 二零二五年度KTV环保设施安装与维护服务合同3篇
- 2024年美甲技艺培训与人才输送合作合同3篇
- (已压缩)矿产资源储量技术标准解读300问-1-90
- 《阿尔茨海默病康复》课件
- 2022-2023学年福建省泉州市惠安县三年级(上)期末数学试卷
- 校企联合实验室的运营与维护
- 统编版语文2024-2025学年六年级上册语文期末专题训练:字音字形(有答案)
- 机器人课件模板下载
- 江苏省苏州市2023-2024学年高二上学期期末学业质量阳光指标调研试题 物理 含答案
- 2024年安防监控系统技术标准与规范
- 软件正版化概念培训
- 工程结算业务咨询服务协议书
- 运输公司安全生产隐患排查制度
评论
0/150
提交评论