您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 设计及方案 > 湖北工程学院手机程序设计-JAVA教师上课稿
手机常见操作系统:iOS苹果手机android安卓系统MotoHTCsymbian塞班诺基亚WP7微软MeeGoBada三星黑莓手机编程语言:JAVA是手机主流的编程语言Java是一个编程语言系:分成三部分:JavaEEJava企业版,网络程序开发JavaSEJava标准版,开发桌面应用系统JavaMEJava移动版,移动设备程序开发Androidmarket手机程序的开发方式,在电脑上设计,调试程序,一旦程序正确,可以传输到手机上,安装,执行。手机程序用java语言开发,必须用手机程序规定的java语法设计程序。开发工具:基本工具jdk(javaSE),手机开发包手机运行环境版本可能有区别:J2ME环境(midpcldc)Android-----重要的手机开发模式,其编程范围已经不仅仅限于手机应用,更扩展到了无线互联网领域。MIDP(MobileInformationDeviceProfile)移动信息设备导言:是移动设备编程和运行必不可少的条件之一。其中定义了一些手机编程必须的类和包。分成1.0,2.0,2.1版本。CLDC(ConnectedLimitedDeviceConfiguration)连接受限设备配置,是专为连接受限设备编程准备的程序。作为连接受限设备之一的手机编程当然这部分也必不可少。以上两大部分,在开发环境安装后,一并安装到机器上。手机开发环境:1.java编译环境,因为手机程序(J2ME)首先是一个java程序,所以必须由java编译器编译。2.手机开发环境,是在java编译环境之上的一个开发环境。如WTK,eclipse等。我们选用WTK环境。但WTK的集成度并不高,它本身不具备编辑源程序的功能,所以只有用其它文本编辑工具编辑源程序,如写字板。并要将写好的手机源程序放在指定位置。如下图:上图说明,我们写的源程序应该放在项目文件夹:C:\wtk25\apps\手机程序演示中的src文件夹中;手机程序中需用到的资源文件(如果需要,如图片)应该放在项目文件夹中的res文件夹中。手机程序中需用到的外部库文件应该放在项目文件夹中的lib文件夹中.按要求将所需文件放在指定位置后,就可以建立(Build)手机程序了。如果程序有错,会在建立中提示,改错后,才会建立程序。下一步就是用模拟器运行(Run)手机程序。手机程序的运行过程如下:编辑源程序(如用写字板输入程序)―――编译(翻译,在Build环节的前一步,如果有错,返回前一步)―――预审(在Build中的后一环节,去掉(修改)程序中不适合在手机中运行的内容,这环节自动的)――模拟器运行(Run)――――如果需要在实体机上运行―――打包项目――传至手机―――安装――――运行。手机程序的基本结构:手机程序是一个java语言程序,而java语言程序是由类(class)构成。一个类可以是如下结构:class类名{…….类体…..}手机程序中的类必须派生于MIDlet类。也就是说,MIDlet类是由系统准备好的。publicclassComputerextendsMIDlet{}MIDlet在何处?必须由程序中说明:importjavax.microedition.midlet.*;importjavax.microedition.lcdui.*;publicclassComputerextendsMIDlet{}import:导入,当使用系统提供的类时,必须导入这些类。相当于指明这些类所在的位置。importjavax.microedition.midlet.MIDlet;//其中的*表示所有类importjavax.microedition.lcdui.*;这两行是所有的j2ME程序必须。每一行的//开始的部分是注释。可见,一个手机程序必须扩展于基类MIDlet,且在类中要覆盖(写出它们的函数体,至少时,可以只给出一对{})MIDlet类中的startApp、pauseApp、destoryApp三个函数。以上程序运行时没有画面,如果要求在手机上有一些画面,可以如下进行:importjavax.microedition.midlet.MIDlet;importjavax.microedition.lcdui.*;publicclassComputerextendsMIDlet{Displaydisp;Formform=newForm(简易计算器);publicvoidstartApp(){disp=Display.getDisplay(this);disp.setCurrent(form);}publicvoidpauseApp(){}publicvoiddestroyApp(booleanb){}}Java编程基础数据类型运算符与表达式程序结构Java程序有三种结构:顺序结构分枝结构(选择结构,判断结构)循环结构(重复结构)分枝结构由if-else语句实现,if(条件){语句块1}else{语句块2}这种结构执行过程是:首先求出条件,条件成立执行语句块1而不执行语句块2,条件不成立时,执行语句块2而不执行语句块1;分枝结构中,“条件”指的是一个可以得到逻辑值的表达式。所以关系运算和逻辑运算常常出现在条件部分。在分枝结构的某一个分枝上,还可以写出更低一级的分枝结构,构成嵌套的分枝结构。循环结构:函数:手机程序是java程序,java由类构成,一个类由若干函数构成。函数是什么?数学中的函数:。。。。程序中的函数:分成两类一类是系统函数:指系统已将函数的算法写成了程序,我们在程序中只需使用(调用)它。使用这类函数,只需要了解函数的一些特征。具体地,了解函数来自何类?参数(自变量)特征(需几个参数,各参数的类型)?函数值特征(类型)。如:正弦函数。doublex=Math.sin(30*Math.PI/180);二类是自定义函数,函数必须由程序员在程序如写出。因为,系统函数不可穷尽所有的应用,所以有些应用必须由程序员自己设计。在程序中设计函数更主要的原因是:将一个庞大的、复杂的程序,化整为零。函数是程序中功能相对独立的部分程序。函数程序设计解决两部分问题:函数的定义,函数的调用。函数的设计:回答如下问题,函数名?参数(自变量)特征?函数值类型?函数体?函数值类型函数名(参数表){函数体}函数值类型函数名(参数表)――――函数原型。有了原型就应该明白函数的用法。函数原型设计除了遵守基本的语法之外,主要取决于函数的功能。举例:求两个整数之较大者。intgetMax(intx,inty)上式中,圆括号中的参数intx,inty,称为形式参数。表现为若干变量的声明。注意不可写成如下形式:intgetMax(intx,y)intgetMax(intx;inty)求三个实数之积。doublemul(doublex,doubley,doublez)求两个整数的最大公约数intgetMaxFactor(inta,intb)求两个整数之较大者。intgetMax(intx,inty)在写函数时,形参部分的变量应当已知数,去设计函数。而参数的具体值,是由函数调用时传入的。函数体是实现函数功能的代码。如:intgetMax(intx,inty){intmax;if(x=y)max=x;elsemax=y;returnmax;一致}函数中必须用return语句“返回”函数值,这个值的类型必须与函数值类型一致。doublemul(doublex,doubley,doublez){returnx*y*z;}函数的调用:就是使用函数,得到一个结果。如求两整数之较大值:intgetMax(intx,inty){intmax;if(x=y)max=x;elsemax=y;returnmax;}intx=getMax(34,56);一致对它的调用:函数名(实际参数表)getMax(34,26);getMax(a,b);这种调用常常错写为如下方式:getMax(inta,intb);由于函数是intgetMax(intx,inty)声明的,所以,对该函数的一个调用式就可以当一个int值来使用。getMax(34,56)当一个整数使用。如:intx=getMax(34,56);intx=12+getMax(a,b);Sysytem.out.println(getMax(a,b));因此,总结函数调用方法:形式参数与实际参数应个数相等、类型相容、次序一致,而且要正确使用返回值。例:判断一个整数x是否是质数。首先从概念出发:质数是只能被1与其自身整除的整数。程序中,可以用2---x-1的每个数除x,若有至少一个数能整除x,则x不是质数;若所有的数都不能整除x,则是质数。intx=…..,i;for(i=2;ix;i++)if(x%i==0)不是是扩大问题的范围,输出3-1000之间的所有质数。publicclassSimplePrime{publicstaticvoidmain(String[]args){for(intx=3;x=1000;x++){if(isPrime(x))System.out.println(x);}}staticbooleanisPrime(intx){for(inti=2;ix;i++)if(x%i==0)returnfalse;returntrue;}}类:类的设计:class类名{}为何要设计类?java程序必须要由类构成。类是对现实世界中事物的描述。而对一个事物的描述分成两部分,事物的属性(数据),行为。属性在类中表现为类的成员变量,行为可以由函数来表现。举二例1.人属性:姓名,年龄,身份证行为:自我介绍,唱歌Java程序中可以有多个类,变量与函数都应该隶属于某个类,不能有变量和函数处于类之外的。在类中的变量可以有两种方式出现:一是,在类中,且不在任何函数中,这样的变量称为类的成员变量。而在类中的某函数中定义的变量,叫局部变量。区别在于,局部变量,它的作用范围是它所处的那对{},而类的成员变量,在整个类的各函数中都起作用。又如,分数类。classFractor{intfz,fm,sign;//sign表示符号,正1,负-1voidprint(){System.out.print((sign==1)?’+’:’-’);System.out.println(fz+’/’+fm);}voidsimplize(){intmcf=getMaxCommFactor();fz=fz/mcf;fm=fm/mcf;}intgetMaxCommFactor(){…………return0;}}282283082@qq.com类的定义classPerson{StringID;Stringname;intage;voidsetData(Stringid,Stringn,inta){ID=id;name=n;age=a;}voidshowMe(){System.out.println(“我是”+name+”,今年”+age+“岁”);}}使用已定义的类:在类外部(在另一个类中)使用类。通过类创建对象。写成的类只是一个类型,类型并不能表达具体的事物,它是抽象的。正如:int表示整数类型,但它不是一个整数,不能int=5;只能inta=5;用类型创建对象,再为对象提供数据。类是类型(相当于int)所以也不能直接描述一个事物。也只能用它创建变量,再用变量描述一个事物。用类创建的变量叫对象。对象在使用之前需经两步:声明对象。Personp1;(比较inta;)创建对象。p1=newPerson();(简单变量不创建)对象创建后可以使用,使用方法两种,存取变量,调用函数。调用函数:对象名.函数名(参数表);存取变量:对象名.变量名当一个类产生后,其中的各变量应该有确定的值。这可以通过调用相应的函数,或为变量赋值这两途径实现。但,这两种方法都要求在程序中用语句完成(由程序员承担)。可能会产生两种不应该的情况,一是对象创建了但没有提供数据;二是多次提供了数据。解决这两种问题在面向对象的程序
本文标题:湖北工程学院手机程序设计-JAVA教师上课稿
链接地址:https://www.777doc.com/doc-151807 .html