资源目录
压缩包内文档预览:(预览前20页/共30页)
编号:21836452
类型:共享资源
大小:14.34MB
格式:ZIP
上传时间:2019-09-06
上传人:QQ24****1780
认证信息
个人认证
王**(实名认证)
浙江
IP属地:浙江
25
积分
- 关 键 词:
-
大学
java
编程
基础
曹静
课件
ppt
- 资源描述:
-
大学JAVA编程基础-曹静-课件PPT,大学,java,编程,基础,曹静,课件,ppt
- 内容简介:
-
Java编程基础,中国水利水电出版社,第10章 Java常用API介绍,10.4 处理时间与日期,10.3 随机数的产生:Random类,10.2 数学函数的使用:Math类,10.1 Java常用API简介,10.5 大数字的处理,教学要求:,理解:Random类与大数字的处理类的使用 掌握:常用API类Math类与处理时间与日期类的使用,10.1 Java常用API简介,Java类库非常庞大,提供了许多实用的类供程序使用,在进行Java编程时,我们常常需要使用Java类库所提供的这些类,这些类对程序的功能和质量起到了非常重要的作用。 本章将介绍用于支持各种数学运算的Math类;用于产生随机数的Random类;用于处理时间和日期的相关类以及处理大数的BigDecimal类。,10.2 数学函数的使用:Math类,Java的java.lang.Math类提供了大量的方法,用于支持各种数学运算及其它的有关运算。 Math 类包含基本的数字操作,如指数、对数、平方根和三角函数。 Math类无需创建对象,其所有成员皆为静态(Static)成员。,10.2 数学函数的使用:Math类 (续),Math类常量 E(自然对数): Math.E PI(圆周率): Math.PI 示例,10.2 数学函数的使用:Math类 (续),Math类常用方法介绍: abs():返回绝对值。 ceil():返回大于或等于参数的最小整数。 floor():返回小于或等于参数的最大整数。 max():返回两个参数的较大值。 min():返回两个参数的较小值。 random():返回0.0和1.0之间的double类型的随机数,包含0.0但不包含1.0。 round():返参数回四舍五入的整数值。 sin():返回参数的正弦值。 cos():返回参数的余弦值。 tan():返回参数的正切值。 exp():返回欧拉数 e 的参数次幂的值。 log():返回(底数是 e)参数 值的自然对数值。 sqrt()::返回参数的平方根。 pow():返回第一个参数的第二个参数次幂的值。,10.3 随机数的产生:Random类,java.util.Random类提供了一系列用于产生随机数的方法。 区别2种随机数类: Math类的random()方法虽然也能产生随机数,但是它只能产生0.0-1.0之间的随机数。 Random类可以十分方便的产生自己需要的各种形式的随机数,十分方便。,10.3 随机数的产生:Random类(续),Random类常用方法介绍: next(int bits):生成下一个伪随机数。 nextInt() :返回下一个伪随机数,它是此随机数生成器的序列中均匀分布的 int 值。 nextLong() :返回下一个伪随机数,它是从此随机数生成器的序列中取出的、均匀分布的 long 值。 setSeed(long seed) :使用单个 long 种子设置此随机数生成器的种子。,10.3 随机数的产生:Random类(续),Random类常用方法介绍: next(int bits):生成下一个伪随机数。 nextInt() :返回下一个伪随机数,它是此随机数生成器的序列中均匀分布的 int 值。 nextLong() :返回下一个伪随机数,它是从此随机数生成器的序列中取出的、均匀分布的 long 值。 setSeed(long seed) :使用单个 long 种子设置此随机数生成器的种子。 示例,10.4 处理时间与日期,Java语言提供了以下类来处理日期: java.util.Date :包装了一个long类型数据,表示与GMT(格林尼治标准时间)的1970年1月1日00:00:00这一时刻所相距的毫秒数。 java.text.DateFormat :对日期进行格式化 java.util.Calendar :可以灵活地设置或读取日期中的年、月、日、分和秒等信息。,10.4 处理时间与日期(续),Date类以毫秒数来表示特定的时间和日期。,import java.util.Date; public class DateDemo public static void main(String args) Date date = new Date(); System.out.println(“自1970-1-1以来的毫秒数:“ + date.getTime(); / getTime():返回自1970 年1月1日00:00:00 GMT 以来的毫秒数 System.out.println(“当前时间:“ + date); ,10.4 处理时间与日期(续),DateFormat 抽象类用于定制日期的格式,它以与语言无关的方式格式化并分析日期或时间。,import java.text.SimpleDateFormat; import java.util.Date; public class DateFormatDemo public static void main(String args) Date date = new Date(); / 设定日期格式 SimpleDateFormat f = new SimpleDateFormat (“yyyy-MMMM-dd-EEEE“); / 按设定的格式输出 System.out.println(f.format(date); / 设定新的格式 f = new SimpleDateFormat(“yy/MM/dd hh:mm:ss“); / 再输出 System.out.println(f.format(date); ,10.4 处理时间与日期(续),Calendar类提供了月历的功能,它拥有众多与日期相关的方法。但是Calendar类是一个抽象类,不能实例化,实际上这些功能都是由它的子类GregorianCalendar实现的。,import java.util.*; public class Calendar1 public static void main(String args) GregorianCalendar gc = new GregorianCalendar(); String now = gc.get(Calendar.YEAR) + “年“ + (gc.get(Calendar.MONTH) + 1) + “月“ + gc.get(Calendar.DATE) + “日“ + gc.get(Calendar.HOUR) + “时“ + gc.get(Calendar.MINUTE) + “分“ + gc.get(Calendar.SECOND) + “秒“; System.out.println(“当前时间是:“ + now); ,10.5 大数字的处理,BigInteger类:用来处理大整数 BigDecimal类:用来处理大十进制数。,10.5 大数字的处理(续),BigInteger类:用来表示不可变的任意精度的整数。所有操作中,都以二进制补码形式表示 BigInteger。 BigInteger 提供Math的所有相关方法,还提供以下运算:模算术、GCD 计算、质数测试、素数生成、位操作以及一些其他操作。 示例,10.5 大数字的处理(续),BigDecimal类:用来表示不可变的、任意精度的有符号十进制数。,import java.math.BigDecimal; public class BigDecimal1 public static void main(String args) BigDecimal op1 = new BigDecimal(“3.14159“); BigDecimal op2 = new BigDecimal(“3“); System.out.println(“和=“ + op1.add(op2); System.out.println(“差=“ + op1.subtract(op2); System.out.println(“积=“ + op1.multiply(op1); System.out.println(“商=“ + op1.divide(op2, BigDecimal.ROUND_UP); System.out.println(“负值=“ + op1.negate(); System.out.println(“指定精度的商=“ + op1.divide(op2, 15,BigDecimal.ROUND_UP); ,本章小结,Math类支持各种数学运算及其它的有关运算,Math提供的方法都是静态的,通过类名直接调用。 Random提供了一系列用于产生随机数的方法。 Date、DateFormat和Calendar及GregorianCalendar提供了对日期和时间进行处理的方法。 BigInteger和BigDecimal可以处理大数字和进行高精度的运算。 对于初学者而言,掌握常用的几种API类,是非常必要的,这为我们在以后的应用过程中节省了不少的时间,不过对于所有API类我们也不需要全部学习完,因为好的程序员应懂得利用工具,可以提前通读JDK文档种大部分类及类种的方法,等到有具体的实际需求时再查阅JDK文档即可。,编程练习题,1将下列函数转换成Java方法,并根据输出结果,编写程序。 f(x)=sin(x)*cos(x)*x2 g (x)=log(x10)*cos(sin(x) e.g. f(1.2)=0.4863334899968286 g(1.2)=1.086997782549394 2将“2008-3-23”格式的日期字符串转换成“2008年03月23日”。 3随机产生3个52307的整数并找出数值居中的数。 4求一个可能多达1000位的正整数 X 的平方根的整数部分。,Thank You !,Java编程基础中国水利水电出版社第10章Java常用API介绍10.4 处理时间与日期 10.3 随机数的产生:Random类 10.2 数学函数的使用:Math类 10.1 Java常用API简介 10.5 大数字的处理 教学要求:理解:Random类与大数字的处理类的使用掌握:常用API类Math类与处理时间与日期类的使用10.1 Java常用API简介 Java类库非常庞大,提供了许多实用的类供程序使用,在进行Java编程时,我们常常需要使用Java类库所提供的这些类,这些类对程序的功能和质量起到了非常重要的作用。本章将介绍用于支持各种数学运算的Math类;用于产生随机数的Random类;用于处理时间和日期的相关类以及处理大数的BigDecimal类。 10.2 数学函数的使用:Math类 Java的java.lang.Math类提供了大量的方法,用于支持各种数学运算及其它的有关运算。Math 类包含基本的数字操作,如指数、对数、平方根和三角函数。 Math类无需创建对象,其所有成员皆为静态(Static)成员。10.2 数学函数的使用:Math类 (续)Math类常量E(自然对数): Math.EPI(圆周率): Math.PI示例 10.2 数学函数的使用:Math类 (续)Math类常用方法介绍:abs():返回绝对值。ceil():返回大于或等于参数的最小整数。floor():返回小于或等于参数的最大整数。max():返回两个参数的较大值。min():返回两个参数的较小值。random():返回0.0和1.0之间的double类型的随机数,包含0.0但不包含1.0。round():返参数回四舍五入的整数值。sin():返回参数的正弦值。cos():返回参数的余弦值。tan():返回参数的正切值。exp():返回欧拉数 e 的参数次幂的值。log():返回(底数是 e)参数 值的自然对数值。sqrt()::返回参数的平方根。pow():返回第一个参数的第二个参数次幂的值。 10.3 随机数的产生:Random类 java.util.Random类提供了一系列用于产生随机数的方法。区别2种随机数类:Math类的random()方法虽然也能产生随机数,但是它只能产生0.0-1.0之间的随机数。 Random类可以十分方便的产生自己需要的各种形式的随机数,十分方便。 10.3 随机数的产生:Random类(续) Random类常用方法介绍:next(int bits):生成下一个伪随机数。nextInt() :返回下一个伪随机数,它是此随机数生成器的序列中均匀分布的 int 值。nextLong() :返回下一个伪随机数,它是从此随机数生成器的序列中取出的、均匀分布的 long 值。setSeed(long seed) :使用单个 long 种子设置此随机数生成器的种子。 10.3 随机数的产生:Random类(续) Random类常用方法介绍:next(int bits):生成下一个伪随机数。nextInt() :返回下一个伪随机数,它是此随机数生成器的序列中均匀分布的 int 值。nextLong() :返回下一个伪随机数,它是从此随机数生成器的序列中取出的、均匀分布的 long 值。setSeed(long seed) :使用单个 long 种子设置此随机数生成器的种子。 示例10.4 处理时间与日期 Java语言提供了以下类来处理日期:java.util.Date :包装了一个long类型数据,表示与GMT(格林尼治标准时间)的1970年1月1日00:00:00这一时刻所相距的毫秒数。java.text.DateFormat :对日期进行格式化java.util.Calendar :可以灵活地设置或读取日期中的年、月、日、分和秒等信息。 10.4 处理时间与日期(续)Date类以毫秒数来表示特定的时间和日期。 import java.util.Date;public class DateDemo public static void main(String args) Date date = new Date();System.out.println(自1970-1-1以来的毫秒数: + date.getTime();/ getTime():返回自1970 年1月1日00:00:00 GMT 以来的毫秒数System.out.println(当前时间: + date);10.4 处理时间与日期(续) DateFormat 抽象类用于定制日期的格式,它以与语言无关的方式格式化并分析日期或时间。 import java.text.SimpleDateFormat;import java.util.Date;public class DateFormatDemo public static void main(String args) Date date = new Date();/ 设定日期格式SimpleDateFormat f = new SimpleDateFormat (yyyy-MMMM-dd-EEEE);/ 按设定的格式输出System.out.println(f.format(date);/ 设定新的格式f = new SimpleDateFormat(yy/MM/dd hh:mm:ss);/ 再输出System.out.println(f.format(date);10.4 处理时间与日期(续) Calendar类提供了月历的功能,它拥有众多与日期相关的方法。但是Calendar类是一个抽象类,不能实例化,实际上这些功能都是由它的子类GregorianCalendar实现的。 import java.util.*;public class Calendar1 public static void main(String args) GregorianCalendar gc = new GregorianCalendar();String now = gc.get(Calendar.YEAR) + 年 + (gc.get(Calendar.MONTH) + 1) + 月 + gc.get(Calendar.DATE) + 日 + gc.get(Calendar.HOUR) + 时 + gc.get(Calendar.MINUTE) + 分 + gc.get(Calendar.SECOND) + 秒;System.out.println(当前时间是: + now);10.5 大数字的处理 BigInteger类:用来处理大整数BigDecimal类:用来处理大十进制数。 10.5 大数字的处理(续)BigInteger类:用来表示不可变的任意精度的整数。所有操作中,都以二进制补码形式表示 BigInteger。BigInteger 提供Math的所有相关方法,还提供以下运算:模算术、GCD 计算、质数测试、素数生成、位操作以及一些其他操作。 示例 10.5 大数字的处理(续)BigDecimal类:用来表示不可变的、任意精度的有符号十进制数。import java.math.BigDecimal;public class BigDecimal1 public static void main(String args) BigDecimal op1 = new BigDecimal(3.14159);BigDecimal op2 = new BigDecimal(3);System.out.println(和= + op1.add(op2);System.out.println(差= + op1.subtract(op2);System.out.println(积= + op1.multiply(op1);System.out.println(商= + op1.divide(op2, BigDecimal.ROUND_UP);System.out.println(负值= + op1.negate();System.out.println(指定精度的商= + op1.divide(op2, 15,BigDecimal.ROUND_UP);本章小结 Math类支持各种数学运算及其它的有关运算,Math提供的方法都是静态的,通过类名直接调用。Random提供了一系列用于产生随机数的方法。Date、DateFormat和Calendar及GregorianCalendar提供了对日期和时间进行处理的方法。BigInteger和BigDecimal可以处理大数字和进行高精度的运算。对于初学者而言,掌握常用的几种API类,是非常必要的,这为我们在以后的应用过程中节省了不少的时间,不过对于所有API类我们也不需要全部学习完,因为好的程序员应懂得利用工具,可以提前通读JDK文档种大部分类及类种的方法,等到有具体的实际需求时再查阅JDK文档即可。编程练习题1将下列函数转换成Java方法,并根据输出结果,编写程序。f(x)=sin(x)*cos(x)*x2g (x)=log(x10)*cos(sin(x)e.g. f(1.2)=0.4863334899968286g(1.2)=1.0869977825493942将“2008-3-23”格式的日期字符串转换成“2008年03月23日”。3随机产生3个52307的整数并找出数值居中的数。4求一个可能多达1000位的正整数 X 的平方根的整数部分。 Java编程基础,中国水利水电出版社,第一章 引言,1.2 Java是什么,1.1 什么是编程,教学要求:,理解:计算机程序语言及种类 Java语言的技术特点 Java平台体系 掌握:Java语言的运行系统、开发环境,1.1 什么是编程,计算机程序告诉计算机应该做什么。计算机执行的任何操作都是由程序控制的。程序设计是将计算机要执行的操作或者计算机要解决的问题转变成程序的过程。 程序设计的过程主要包括分析问题、确定算法、用选定的程序设计语言编写源程序、调试和运行程序。,1.1 什么是编程(续),程序员可以用各种程序语言编写指令,有些语言是计算机直接能理解的,有些则需经过中间的“翻译”步骤。目前使用的计算机语言有数百种,大致可以划分为三大类: 机器语言 汇编语言 高级语言,1.1 什么是编程(续),机器语言 所有计算机都能直接理解自己的机器语言。机器语言是任何一台特定计算机的“自然语言”。这种语言由计算机的硬件设计所定义。机器语言通常由大量数字字符串0、1组成,它们指示计算机一次执行一个最基本的操作。 例:使用机器语言编写将英语分数与数学分数相加,并将结果存到总分数里: +1300042774 +1400593419 +1200274027,1.1 什么是编程(续),汇编语言 机器语言编程较慢、不易于理解。因此程序员不再使用机器语言,开始采用类似于英语的缩写指令来表示基本操作。汇编语言是一种翻译程序,以计算机速度将汇编语言程序翻译成机器语言。 例:使用汇编语言编写将英语分数与数学分数相加,并将结果存到总分数里: LOAD MathScore ADD EnglishScore STORE TotalScore,1.1 什么是编程(续),高级语言 汇编语言出现后,计算机应用迅速增长。但即使用汇编语言编程,完成最简单的任务也需要编写许多指令。于是,高级语言孕育而生了,仅一条语句就能完成大量任务。 例:使用高级语言编写将英语分数与数学分数相加,并将结果存到总分数里: TotalScore = MathScore + EnglishScore,1.1 什么是编程(续),高级语言 计算机高级语言更接近于人类的自然语言,易于理解,得以广泛流行。 C、C+和Java均是时下最流行的、功能较强大的高级程序设计语言。,1.2 Java是什么,Java的语言背景 1991年 ,SUN MicroSystem公司的 Jame Gosling、 Bill Joe等人 ,为在电视、控制烤面包箱等家用消费类电子产品上进行交互式操作而开发了一个名为Oak的软件,但当时并没有引起人们的注意 ,直到 1994年下半年 ,Internet的迅猛发展 ,环球信息网 WWW的快速增长 ,促进了 Java语言研制的进展 ,使得它逐渐成为 Internet上受欢迎的开发与编程语言。,1.2 Java是什么(续),自从Sun推出Java以来,按应用来分主要分为三大块: J2SE(Java2 Standard Edition):Java2的标准版,主要用于桌面应用软件的编程 。 J2ME(Java 2 Micro Edition):主要应用于嵌入是系统开发,如手机和PDA的编程 。 J2EE(Java 2 Platform,Enterprise Edition):Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。 这是SunONE(Open Net Environment)体系。,1.2 Java是什么(续),Java语言的应用,1.2 Java是什么(续),Java的技术特点 Java是目前使用最为广泛的网络编程语言之一,具有简单、动态、面向对象、分布式、解释执行、健壮、安全、结构中立、可移植、高效能、多线程等多种特点。 1、简单性 2、面向对象 3、分布性 4、鲁棒性 5、安全性,1.2 Java是什么(续),Java的技术特点 (续) 6、体系结构中立 7、可移植性 8、解释执行 9、高性能 10、多线程 11、动态性,1.2 Java是什么(续),Java平台介绍 Java平台由两大部分组成: Java虚拟机(Java Virtual Machine) Java应用编程接口(Java Application Programming Interface),1.2 Java是什么(续),Java平台介绍 (续) Java虚拟机(Java Virtual Machine) JVM是通过在实际的计算机上仿真模拟各种计算机功能来实现的。 Java虚拟机有自己完善的硬件架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。 JVM屏蔽了与具体操作系统平台相关的信息,使得Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。,1.2 Java是什么(续),Java平台介绍 (续) Java应用编程接口 Java API是一些预定义的类库,开发人员需要用这些类来访问Java语言的功能。Java API包括一些重要的语言结构以及基本图形,网络和文件I/O、数据库操作组件等等。是软件组件的集合。,1.2 Java是什么(续),Java平台介绍 (续),1.2 Java是什么(续),Java平台介绍 (续) JDK为Java Development Kit(Java开发工具包),包括运行环境、编译工具及其它工具、源代码等。 JRE为Java Runtime Environment(Java运行环境),运行Java程序所必须的环境的集合,包含JVM标准实现及Java核心类库等。,1.2 Java是什么(续),Java运行系统 通过编译器,可以把Java程序翻译成一种中间代码 (称为字节码)可以被Java解释器解释的独立于平台的代码。通过解释器,每条Java字节指令被分析,然后在计算机上运行。只需编译一次,程序运行时解释执行。,1.2 Java是什么(续),Java运行系统 (续) Java字节码使编译一次,到处运行成为可能。可以在任何有Java编译器的平台上把Java程序编译成字节码。这个字节码可运行在任何Java VM上。,本章小结,程序设计语言是计算机能够理解的、用于人和计算机之间进行交流的语言。 程序设计的过程主要包括分析问题、确定算法、用选定的程序设计语言编写源程序、调试和运行程序。 计算机语言大致可以划分为三大类:机器语言、汇编语言、高级语言。 SunONE体系:J2SE,J2ME和J2EE。 Java平台由两大部分组成: Java虚拟机和Java应用编程接口。 JDK为Java Development Kit,包括运行环境、编译工具及其它工具、源代码等。而JRE为Java Runtime Environment,运行Java程序所必须的环境的集合,包含JVM标准实现及Java核心类库。 Java语言程序具有“一次编写,重复使用”的特点 。,思考,1通过互联网了解时下较流行的编程语言及其应用方向(如C+、Java、C#、Python)。 2浏览Sun公司网站(/),了解Java语言的发展方向及最新动态。 3通过互联网了解时下较流行的编写Java程序的工具及其特点 4为什么称Java语言为“面向对象的编程语言”。,Thank You !,Java编程基础中国水利水电出版社第一章 引言1.2 Java是什么1.1 什么是编程教学要求:理解:计算机程序语言及种类 Java语言的技术特点 Java平台体系掌握:Java语言的运行系统、开发环境 1.1 什么是编程计算机程序告诉计算机应该做什么。计算机执行的任何操作都是由程序控制的。程序设计是将计算机要执行的操作或者计算机要解决的问题转变成程序的过程。程序设计的过程主要包括分析问题、确定算法、用选定的程序设计语言编写源程序、调试和运行程序。 1.1 什么是编程(续)程序员可以用各种程序语言编写指令,有些语言是计算机直接能理解的,有些则需经过中间的“翻译”步骤。目前使用的计算机语言有数百种,大致可以划分为三大类: 机器语言汇编语言 高级语言 1.1 什么是编程(续)机器语言所有计算机都能直接理解自己的机器语言。机器语言是任何一台特定计算机的“自然语言”。这种语言由计算机的硬件设计所定义。机器语言通常由大量数字字符串0、1组成,它们指示计算机一次执行一个最基本的操作。例:使用机器语言编写将英语分数与数学分数相加,并将结果存到总分数里: +1300042774 +1400593419 +1200274027 1.1 什么是编程(续)汇编语言机器语言编程较慢、不易于理解。因此程序员不再使用机器语言,开始采用类似于英语的缩写指令来表示基本操作。汇编语言是一种翻译程序,以计算机速度将汇编语言程序翻译成机器语言。 例:使用汇编语言编写将英语分数与数学分数相加,并将结果存到总分数里: LOAD MathScore ADD EnglishScore STORE TotalScore 1.1 什么是编程(续)高级语言汇编语言出现后,计算机应用迅速增长。但即使用汇编语言编程,完成最简单的任务也需要编写许多指令。于是,高级语言孕育而生了,仅一条语句就能完成大量任务。 例:使用高级语言编写将英语分数与数学分数相加,并将结果存到总分数里: TotalScore = MathScore + EnglishScore 1.1 什么是编程(续)高级语言计算机高级语言更接近于人类的自然语言,易于理解,得以广泛流行。 C、C+和Java均是时下最流行的、功能较强大的高级程序设计语言。 1.2 Java是什么 Java的语言背景 1991年 ,SUN MicroSystem公司的 Jame Gosling、 Bill Joe等人 ,为在电视、控制烤面包箱等家用消费类电子产品上进行交互式操作而开发了一个名为Oak的软件,但当时并没有引起人们的注意 ,直到 1994年下半年 ,Internet的迅猛发展 ,环球信息网 WWW的快速增长 ,促进了 Java语言研制的进展 ,使得它逐渐成为 Internet上受欢迎的开发与编程语言。 1.2 Java是什么(续)自从Sun推出Java以来,按应用来分主要分为三大块:J2SE(Java2 Standard Edition):Java2的标准版,主要用于桌面应用软件的编程 。J2ME(Java 2 Micro Edition):主要应用于嵌入是系统开发,如手机和PDA的编程 。J2EE(Java 2 Platform,Enterprise Edition):Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。 这是SunONE(Open Net Environment)体系。 1.2 Java是什么(续)Java语言的应用 1.2 Java是什么(续) Java的技术特点 Java是目前使用最为广泛的网络编程语言之一,具有简单、动态、面向对象、分布式、解释执行、健壮、安全、结构中立、可移植、高效能、多线程等多种特点。1、简单性 2、面向对象 3、分布性 4、鲁棒性 5、安全性 1.2 Java是什么(续) Java的技术特点 (续)6、体系结构中立 7、可移植性 8、解释执行 9、高性能 10、多线程 11、动态性 1.2 Java是什么(续) Java平台介绍 Java平台由两大部分组成: Java虚拟机(Java Virtual Machine) Java应用编程接口(Java Application Programming Interface)1.2 Java是什么(续) Java平台介绍 (续)Java虚拟机(Java Virtual Machine)JVM是通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java虚拟机有自己完善的硬件架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。JVM屏蔽了与具体操作系统平台相关的信息,使得Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。 1.2 Java是什么(续) Java平台介绍 (续)Java应用编程接口Java API是一些预定义的类库,开发人员需要用这些类来访问Java语言的功能。Java API包括一些重要的语言结构以及基本图形,网络和文件I/O、数据库操作组件等等。是软件组件的集合。1.2 Java是什么(续) Java平台介绍 (续)1.2 Java是什么(续) Java平台介绍 (续)JDK为Java Development Kit(Java开发工具包),包括运行环境、编译工具及其它工具、源代码等。JRE为Java Runtime Environment(Java运行环境),运行Java程序所必须的环境的集合,包含JVM标准实现及Java核心类库等。 1.2 Java是什么(续) Java运行系统 通过编译器,可以把Java程序翻译成一种中间代码 (称为字节码)可以被Java解释器解释的独立于平台的代码。通过解释器,每条Java字节指令被分析,然后在计算机上运行。只需编译一次,程序运行时解释执行。1.2 Java是什么(续) Java运行系统 (续)Java字节码使编译一次,到处运行成为可能。可以在任何有Java编译器的平台上把Java程序编译成字节码。这个字节码可运行在任何Java VM上。本章小结 程序设计语言是计算机能够理解的、用于人和计算机之间进行交流的语言。程序设计的过程主要包括分析问题、确定算法、用选定的程序设计语言编写源程序、调试和运行程序。计算机语言大致可以划分为三大类:机器语言、汇编语言、高级语言。SunONE体系:J2SE,J2ME和J2EE。Java平台由两大部分组成: Java虚拟机和Java应用编程接口。JDK为Java Development Kit,包括运行环境、编译工具及其它工具、源代码等。而JRE为Java Runtime Environment,运行Java程序所必须的环境的集合,包含JVM标准实现及Java核心类库。Java语言程序具有“一次编写,重复使用”的特点 。思考 1通过互联网了解时下较流行的编程语言及其应用方向(如C+、Java、C#、Python)。2浏览Sun公司网站(/),了解Java语言的发展方向及最新动态。3通过互联网了解时下较流行的编写Java程序的工具及其特点4为什么称Java语言为“面向对象的编程语言”。Java编程基础,中国水利水电出版社,第2章 开发Java程序,2.3 选择合适的开发工具Java IDE,2.2 第一个Java程序实例:HelloJava,2.1 下载、安装和使用JDK,教学要求:,理解:Java安装目录的文件结构 HelloJava.java的文件结构 配置Java的环境变量 掌握:Java IDE工具、Java程序的运行方式,2.1 下载、安装和使用JDK,登陆Java的官方网站()免费下载JDK。下载完成后,安装比较简单,直接双击,程序即可自动解压缩并进行安装,一路都有画面指示,只需要遵循即可。安装完成后,在安装路径下有2个文件夹。,jre文件夹:提供了运行Java程序所必须的环境。 jdk文件夹:提供了解释编译、运行Java程序所必须的环境。,2.1 下载、安装和使用JDK(续),在jdk文件夹中,文件目录结构如图所示:,lib文件夹:Java 运行时环境使用的代码库、属性设置和资源文件。 bin文件夹:Java 平台使用的工具和库的可执行文件及 DLL。,2.1 下载、安装和使用JDK(续),bin文件夹:Java 平台使用的工具和库的可执行文件及 DLL。,javac:Java编译器,将Java源代码转换成字节码。 java: Java解释器,直接从类文件执行Java应用程序字节代码。 appletviewer:小程序浏览器,一种执行Java Applet程序的Java浏览器。 javadoc:根据Java源码及说明语句生成HTML文档。 jdb:Java调试器,可以逐行执行程序,设置断点和检查变量。,2.1 下载、安装和使用JDK(续),配置环境变量 设置Java运行环境:进入“控制面板”,双击“系统”,弹出“系统属性”对话框,选择“高级”单击“环境变量”按钮 。 单击“新建”,添加如下的系统环境变量: 变量名:Path,变量值:D: jdk bin(假设JDK安装在D盘根目录下),如果曾经设置过环境变量Path,可单击该变量进行编辑操作。,2.1 下载、安装和使用JDK(续),配置环境变量 (续) JDK安装目录的jre文件夹中包含着Java应用程序运行时所需要的Java类库和虚拟机,这些类库被包含在jrelib目录中的压缩文件rt.jar中。安装JDK一般不需要设置环境变量classpath的值。 如果你的机器安装过一些商业化的Java开发产品或带有Java技术的一些产品,如PB、Oracle等,可能加载这些产品所带的老版本的类库而导致程序要加载的类无法找到,使程序出现运行错误。可以重新编辑系统环境变量classpath的值,并修改 。,2.2 第一个Java程序实例:HelloJava,编写源程序HelloJava.java public class HelloJava public static void main(String args) System.out.println(“Hello Java!“); ,2.2 第一个Java程序实例:HelloJava(续),注意:Java源文件中的语句所涉及到的括号和标点符号全部是英文状态下输入的,简单记忆的话记住Java语言是由说英文的人编出来的,和我们平时看到英语文章中的标点符号也是英文状态下输入的道理一样。比如“Hello Java!”中的引号必须是英文状态下的引号,但是括在 “”里面的符号不受英文符号或者中文符号的限制
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。