程序设计概述_第1页
程序设计概述_第2页
程序设计概述_第3页
程序设计概述_第4页
程序设计概述_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Java 程序设计概述n 计算机与程序设计n 程序设计语言n Java 语言介绍n 第一个Java程序(编辑、编译与运行)计算机与程序设计只有学会编程,才能真正理解计算机 现实世界其实是由一个名叫“母体”的计算机人工智能系统控制,人们就像他们饲养的动物,没有自由和思想,到底哪里才是真实的世界?,这是黑客的帝国,程序和代码程序和代码欢迎大家的到来。 黑客帝国这是一个未来的世界,天下已经由机器人来操控。机器人想完全占有这个世界,把人类赶尽杀绝,然而,于是,终结者机器人T-800(阿诺施瓦辛格 Arnold Schwarzenegger饰)受命 终结者/未来战士世界上有两种人,一种是懂二进制的,一种

2、不懂。 中国网友计算机模型计算机模型:冯诺依曼结构计算机模型:现代版冯诺依曼“计算机之父计算机之父”,最先提出“存储程序存储程序”与“二进制二进制”的概念n存储程序存储程序是将根据特定问题编写的程序存放在计算机存储器中,然后按存储器中的存储程序的首地址执行程序的第一条指令,以后就按照该程序的规定顺序执行其他指令,直至程序结束执行。 还是“博弈论之父”冯诺伊曼结构的设计概念 n冯冯诺伊曼结构诺伊曼结构与储存程式型电脑是互相通用的名词,其用法将于下述。而哈佛结构哈佛结构则是一种将程式资料与普通资料分开储存的设计概念。n储存程式型概念也可让程式执行时自我修改程式的运算内容。本概念的设计动机之一就是可

3、让程式自行增加内容或改变程式指令的内存位置。存储器n程序程序计算机程序或者软件程序(通常简称程序)是指一组指示计算机每一步动作的指令,通常用某种程序设计语言编写,运行于某种目标体系结构上。打个比方,一个程序就像一个用汉语(程序设计语言)写下的红烧肉菜谱(程序),用于指导懂汉语的人(体系结构)来做这个菜。 通常,计算机程序要经过编译和链接而成为一种人们不易理解而计算机理解的格式,然后运行。未经编译就可运行的程序通常称之为脚本程序(script)。n数据数据数据可以被定义为被程序处理的信息。当我们考虑到整个计算机系统时,有时程序和数据的区别就不是那么明显了。中央处理器有时有一组微指令控制硬件,数据

4、可以是一个有待执行的程序(参见脚本编程语言),程序可以编写成去编写其它的程序;所有这些例子都使程序和数据的比较成为一种视角的选择。有人甚至断言程序和数据没有区别。 程序数据存储器程序=算法+数据结构n算法算法指解决某个问题的严格方法,通常还需辅以某种程度上的运行性能分析。算法可以是纯理论的,也可以由一个计算机程序实现。理论算法通常根据复杂性分为不同类别;实现的算法通常经过颇析(Profiling )以测试其性能。请注意虽然一个算法在理论上有效可行,但是一个糟糕的实现仍会浪费宝贵的计算机资源。(更详细信息,参见算法信息论,Algorithmic Information Theory ) 。n数据

5、结构数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率的算法。数据结构往往同高效的检索算法和索引技术有关。 编程过程n问题建模n算法设计n编写代码n编译调试n运行Problem设有一头小母牛,从出生第四年起每年生一头小母牛,按此规律,第N年时有几头母牛? Input本题有多组数据。每组数据只有一个整数N,独占一行。(1N50) Output对每组数据,输出一个整数(独占一行)表示第N年时母牛的数量 Sample InputSample Output11425320872 程序设计语言n机

6、器语言机器语言 指一台计算机全部的指令集合,一条机器语言成为一条二进制指令。指令是不可分割的最小功能单元。而且,由于每台计算机的指令系统往往各不相同。n汇编语言汇编语言 用一些简洁的英文字母、符号串来替代一个特定的指令的二进制串,比如,用ADD代表加法。负责将这些符号翻译成二进制机器指令的程序被称为汇编器汇编器。n高级语言高级语言 接近于数学语言或人的自然语言(如if,+),同时又不依赖于计算机硬件,编出的程序能在所有机器上通用。负责将高级语言源代码翻译成汇编语言或机器指令的程序叫编译器编译器。最早流行的高级语言是C语言。高级语言分类1.命令式语言命令式语言。这种语言的语义基础是模拟“数据存储

7、/数据操作”的图灵机可计算模型,十分符合现代计算机体系结构的自然实现方式。其中产生操作的主要途径是依赖语句或命令产生的副作用。现代流行的大多数语言都是这一类型,比如 Fortran、Pascal、Cobol、C、C+、Basic、Ada、Java、C# 等,各种脚本语言也被看作是此种类型。2.函数式语言函数式语言。这种语言的语义基础是基于数学函数概念的值映射的算子可计算模型。这种语言非常适合于进行人工智能等工作的计算。典型的函数式语言如 Lisp、Haskell、ML、Scheme 等。3.逻辑式语言逻辑式语言。这种语言的语义基础是基于一组已知规则的形式逻辑系统。这种语言主要用在专家系统的实现

8、中。最著名的逻辑式语言是 Prolog。4.面向对象语言面向对象语言。现代语言中的大多数都提供面向对象的支持,但有些语言是直接建立在面向对象基本模型上的,语言的语法形式的语义就是基本对象操作。主要的纯面向对象语言是 Smalltalk。高级语言的处理过程C 语言家族Java 特点:跨平台nJVM - Java虚拟机Java Virtual Machine是一个虚构出来的计算机,通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java虚拟机有自己完善的硬体架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。JVM屏蔽了与具体操作系统平台相关的信息,使得Java程序只需生成在Java虚拟机上

9、运行的目标代码(字节码),就可以在多种平台上不加修改地运行。 Java 平台介绍nJava SE(Java Platform,Standard Edition)。Java SE 以前称为 J2SE。它允许开发和部署在桌面、服务器、嵌入式环境和实时环境中使用的 Java 应用程序。Java SE 包含了支持 Java Web 服务开发的类,并为 Java Platform,Enterprise Edition(Java EE)提供基础。 nJava EE(Java Platform,Enterprise Edition)。这个版本以前称为 J2EE。企业版本帮助开发和部署可移植、健壮、可伸缩且安

10、全的服务器端 Java 应用程序。Java EE 是在 Java SE 的基础上构建的,它提供 Web 服务、组件模型、管理和通信 API,可以用来实现企业级的面向服务体系结构(service-oriented architecture,SOA)和 Web 2.0 应用程序。 nJava ME(Java Platform,Micro Edition)。这个版本以前称为 J2ME。Java ME 为在移动设备和嵌入式设备(比如手机、PDA、电视机顶盒和打印机)上运行的应用程序提供一个健壮且灵活的环境。Java ME 包括灵活的用户界面、健壮的安全模型、许多内置的网络协议以及对可以动态下载的连网和

11、离线应用程序的丰富支持。基于 Java ME 规范的应用程序只需编写一次,就可以用于许多设备,而且可以利用每个设备的本机功能。 我的第一个Java程序n编辑(区分大小写区分大小写)n编译(命令 javac.exe)n解释运行(命令 java.exe)(JVM)准备Java开发环境JDK, Java Development Kit(内置编译器、解释/运行器、JRE)n下载 Java SE http:/常见错误错误原因:1-未安装JDK,或,2-未正确地将JDK的bin路径添加到path环境变量找到安装后javac.exe 所在的位置设置path1.“我的电脑”右键“属性”2.高级3.编辑“pat

12、h”系统变量4.将 javac.exe 所在目录(包含bin)添加于前5.打开一个新的 cmd 命令行窗口常见命令(运行“cmd”进入命令窗口)切换到 D 盘cd 进入当前目录下的子目录dir显示当前目录内容javac 编译源代码文件java 运行字节码文件编译成功生产的字节码文件思考作业:养牛问题Problem设有一头小母牛,从出生第四年起每年生一头小母牛,按此规律,第N年时有几头母牛? Input本题有多组数据。每组数据只有一个整数N,独占一行。(1N50) Output对每组数据,输出一个整数(独占一行)表示第N年时母牛的数量 Sample InputSample Output11425

13、320872 参考程序一public class Test public static void main(String args) int n=5;int a=1, b=1, temp; int sum=2; for(int i=3; i=n; i+) temp=a+b; a=b; b=temp; sum=sum+temp; System.out.println(sum= + sum); 参考程序二public class Test public static void main(String args) int n = 5; long a1 = 1; long a2 = 1; long a3 = 1 long a4 = 1; int i = 0; long sum = 0; for (i = 4; i n + 1; i+) a4 = a1 + a3; a1 = a2; a2 = a3; a3 = a4; sum

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论