JAVA语言基础教程

上传人:积*** 文档编号:123399021 上传时间:2022-07-22 格式:DOC 页数:39 大小:231.50KB
收藏 版权申诉 举报 下载
JAVA语言基础教程_第1页
第1页 / 共39页
JAVA语言基础教程_第2页
第2页 / 共39页
JAVA语言基础教程_第3页
第3页 / 共39页
资源描述:

《JAVA语言基础教程》由会员分享,可在线阅读,更多相关《JAVA语言基础教程(39页珍藏版)》请在装配图网上搜索。

1、JAVA教程 第一讲 Java语言概述(4)1.2.5 java平台不断扩展的计算平台java不仅是编程语言,还是一种开发平台,java技术给程序员提供了许多工具:编译器、解释器、文档生成器和文献打包工具等等。同步java还是一种程序发布平台,有两种重要的发布环境,一方面java运营时环境(java runtime environment,简称JRE)涉及了完整的类文献包,另一方面许多重要的浏览器都提供了java解释器和运营时环境。目前Sun公司把java平台划提成J2EE、J2SE、J2ME三个平台,针对不同的市场目的和设备进行定位。J2EE是Java2 Enterprise Edition

2、,重要目的是为公司计算提供一种应用服务器的运营和开发平台。J2EE自身是一种开放的原则,任何软件厂商都可以推出自己的符合J2EE原则的产品,使顾客可以有多种选择。IBM、Oracle、BEA、HP等29家已经推出了自己的产品,其中尤以BEA公司的weglogic产品和IBM公司的websphare最为出名。J2EE将逐渐发展成为可以与微软的.NET战略相对抗的网络计算平台。J2SE是Java2 Standard Edition,重要目的是为台式机和工作站提供一种开发和运营的平台。我们在学习java的过程中,重要是采用J2SE来进行开发。J2ME是Java2 Micro Edition,重要是面

3、向消费电子产品,为消费电子产品提供一种java的运营平台,使得java程序可以在手机、机顶盒、PDA等产品上运营。上述三个java平台的关系 1.3 一切都是对象1.3.1面向过程面向对象的第一种原则是把数据和对该数据的操作都封装在一种类中,在程序设计时要考虑多种对象及其互相间的关系。有些功能并不一定由一种程序段完全实现,可以让其他对象来实现,在本例中就由类Max完毕求最大值的功能。而面向对象的此外一种好处是实现代码的反复使用,例如其他的程序中如果需规定最大值的功能,只需要通过类Max的对象就可以达到目的。但是如果象面向过程的代码段那样把求最大值的算法都实目前该代码段中,则无法复用初期的编程语

4、言如FORTRAN、C基本上都是面向过程的语言,其编程的重要思路专注于算法的实现。例如下面是一种面向过程的求正整数最大值的程序:int maxSoFar=0,price=1; /最大值maxSoFar的初始值为0,price是输入的值while(price0) /循环输入price的值if (pricemaxSoFar) /输入的值price不小于最大值maxSoFarmaxSoFar=price; /则maxSoFar的值为price的值String input=JoptionPane.showInputDialog(Enter the next price); /继续输入pricepric

5、e=Double.parseDouble(input); /把字符串input转换成整数priceSystem.out.println(The maximum is +maxSoFar); /打印最大值maxSoFar该程序段重要实现了求最大值的算法,但是,如果考虑用面向对象的编程,可以是此外一种方式: Max max=new Max( ); /max是类Max的一种对象while(price0) max.updateMax(price);/对象max调用updateMax措施,更新最大值price=max.getPrice( ); /对象max调用getPrice获得下一种price的值Sy

6、stem.out.println(The maximum is +max.getMax( );/对象max调用getMax措施获得最大值,并打印出来1.3.2 面向对象 纯正的面向对象程序设计措施是这样的:1 所有的东西都是对象。可以将对象想象成为一种新型变量,它保存着数据,并且还可以对自身数据进行操作。例如类Max中保存着数据的最大值,同步尚有措施updateMax根据新加入的price值产生最新的最大值,尚有getMax措施返回数据的最大值。2 程序是一大堆对象的组合。通过消息传递,各对象懂得自己应当做些什么。如果需要让对象做些事情,则须向该对象发送一条消息。具体来说,可以将消息想象成为一

7、种调用祈求,它调用的是附属于目的对象的一种措施。例如上面面向对象的程序段应当是属于某个类的,例如说是属于类Shopping,则Shopping中就涉及了类Max的对象max,调用措施updateMax就相称于Shopping对象对max对象发出一条指令updateMax,规定对象max重新计算最大值。3 每个对象均有自己的存储空间。可容纳其他对象,或者说通过封装既有的对象,可以产生新型对象。因此,尽管对象的概念非常简朴,但是通过封装后来却可以在程序中达到任意高的复杂限度。4 每个对象都属于某个类。根据语法,每个对象都是某个类的一种实例。一种类的最重要的的特性就是能将什么消息发给它?,也就是类自

8、身有哪些操作。例如max是类Max的实例。JAVA教程 第一讲 Java语言概述(5)1.4 构建java程序1.4.1 第一种java applicationjava程序分为java application(java 应用程序)和java applet(java小应用程序)两种。下面让我们编写一种java应用程序,它可以运用来自java原则库的System对象的多种措施,打印出与目前运营的系统有关的资料。其中/代表一种注释方式,表达从这个符号开始到这行结束的所有内容都是注释。在每个程序文献的开头,如果这个文献的代码中用到了系统所提供的额外的类,就必须放置一种import语句。说它是额外的是指

9、一种特殊的类库java.lang会自动导入到每个java文献 /这是我们的第一种java application,该程序保存在文献Property.java中import java.util.*; /*下面我们用到了Date和Properties这两个类,是属于java.util这个包的;*/*而System和Runtime这两个类,是属于java.lang这个包的。*/public class Property /程序员给这个类取名为Propertypublic static void main(String args) /main是类的主措施System.out.println(new D

10、ate( ); /在命令行下面打印出日期Properties p=System.getProperties( ); /获得系统的Properties对象pp.list(System.out); /在命令行下打印出p中的各个系统变量的值System.out.println(- Memory Usage:); /*打印一行字符串-Memory Usage*/Runtime rt=Runtime.getRuntime( ); /获得系统的Runtime对象rtSystem.out.println(Total Memory= + rt.totalMemory( ) /打印总内存大小+ Free Mem

11、ory = +rt.freeMemory( ); /打印空闲内存大小在java中,程序都是以类的方式组织的,java源文献都保存在以java为后缀的.java文献当中。每个可运营的程序都是一种类文献,或者称之为字节码文献,保存在.class文献中。而作为一种java application,类中必须涉及主措施,程序的执行是从main措施开始的,措施头的格式是拟定不变的:public static void main(String args) 其中核心字public意味着措施可以由外部世界调用。main措施的参数是一种字符串数组args,虽然在本程序中没有用到,但是必须列出来。程序的第一行非常故

12、意思:System.out.println(new Date();打印语句的参数是一种日期对象Date,而创立Date对象的目的就是把它的值发给println()语句。一旦这个语句执行完毕,Date对象就没用了,而后无用内存回收器会将其收回。第二行中调用了System.getProperties( )。从协助文档中可知,getProperties( )是System类的一种静态措施(static 措施),由于它是静态的,因此不必创立任何对象就可以调用该措施。在第三行,Properties对象有一种名为list( )的措施,它将自己的所有内容都发给一种PrintStream对象,该对象就是lis

13、t()措施的参数。第四行和第六行是典型的打印语句,其中第六行通过运算符的重载来连接多种字符串对象,在java中只有当运算符作用于字符串时在可以进行重载。但是让我们仔细观测下述语句:System.out.println(Total Memory= + rt.totalMemory( ) /打印总内存大小+ Free Memory = +rt.freeMemory( ); /打印空闲内存大小其中,totalMemory( )和freeMemory( )返回的是数值,并非String对象。如果将一种字符串与一种数值相加,成果会如何?在这种状况下,编译器会自动调用一种toString()措施,将该数值

14、(int型或者float型)转换成字符串。通过这样解决后来,就可以用进行字符串连接了。main()的第五行通过调用Runtime的getRuntime()措施创立了一种Runtime对象,该对象中涉及了内存等信息。1.4.2 java程序的编辑java程序的编辑可以使用任何一种文本编辑器,例如UltraEdit、Notepad、Wordpad甚至word,然后只要把编辑好的文献存成.java文献。固然也可以用某些集成开发环境,例如Borland公司的JBuilder,IBM公司的Visualage for Java,此外尚有cafe、kawa等其他集成开发环境。下面两幅图分别是用UltraEd

15、it和JBuilder编辑Property.java文献的状况Sun公司为全世界的java程序员提供了一种免费的java程序开发包(Java Develop Kit,简称JDK),其中涉及了java编译器命令javac,以及java执行命令java,尚有协助文档生成器命令javadoc等等。所有这些命令都可以在命令行下运营,例如我们要编译上述java文献Property.java,如果是在windows中进行开发,就可以在命令提示符下进行编译,在命令行中敲入javac Property.java.JAVA教程 第一讲 Java语言概述(6) 时间 : -06-07 作者:许斌 编辑:Mr.阿布

16、 点击: 236 评论 -1.4.4 java application的执行当编译结束后来,在java源文献中的每一种类都会生成相应的 .class 文献,例如上图中就会生成一种Property.class文献,而java程序在执行时调用的是.class 文献。Java application的执行是在命令行下进行的,如果是在windows系统中,就可以命令提示符下敲入java Propery进行执行,该java命令会启动java虚拟机,并读入Property.class文献进行执行。由于该程序的运营成果直接在命令行下进行输出.1.4.5 第一种java appletjava程序的另一种形式是

17、java applet,applet没有main()措施,它必须嵌在超文本文献中,在浏览器中进行运营。右面这个程序将在浏览器中显示一行字符串./这是我们的第一种java applet,该程序保存在文献HelloEducation.java中import java.awt.Graphics; /在进行显示输出时,需要用到类Graphics的对象;import java.applet.Applet; /Applet类是所有的java applet的父类;public class HelloEducation extends Applet /程序员给这个类取名为HelloEducation/所有的a

18、pplet程序都是Applet类的子类public String s;public void init() /s=new String(Welcome to Tongfang Education); /生成一种字符串对象public void paint(Graphics g)g.drawString(s,25,25); /在浏览器中坐标为(25,25)的位置显示字符串sapplet程序是从措施init( )开始执行的,在该措施中完毕了对字符串s的初始化工作,而显示功能是在措施paint( )中执行的。paint( )措施是类Applet的一种成员措施,其参数是图形对象Graphics g,通

19、过调用对象g的drawString( )措施就可以显示输出。1.4.6 java applet的执行java applet程序也是一种类,其编译方式与java application完全同样,HelloEducation.java程序通过编译后来就生成了HelloEducation.class文献。java applet的执行方式与java application完全不同,java applet程序必须嵌入到html文献中才可以执行,因此必须编写相应的html文献。下面为HelloEducaiton.html文献的内容:然后可以通过JDK所提供的命令appletviewer,在命令行下面执行j

20、ava applet程序。如果是在windows操作系统中,就可以在命令提示符下敲入appletviewer HelloEducation.html。此时系统会弹出此外一种窗口运营该applet程序。applet还可以采用此外一种方式运营,那就是直接在浏览器中打开HelloEducation.html程序,成果如图1_4_6所示。在主流的浏览器如IE、Netscape中都包具有java虚拟机,负责解释执JAVA教程 第一讲 Java语言概述(7)1.5 java程序规范1.5.1 java源程序构造一种完整的java源程序应当涉及下列部分:package语句; /该部分至多只有一句,必须放在源

21、程序的第一句import语句; /*该部分可以有若干import语句或者没有,必须放在所有的 类定义之前*/public classDefinition; /公共类定义部分,至多只有一种公共类的定义 /java语言规定该java源程序的文献名必须与该公共类名完全一致classDefinition; /类定义部分,可以有0个或者多种类定义interfaceDefinition; /接口定义部分,可以有0个或者多种接口定义例如一种java源程序可以是如下构造,该源程序命名为HelloWorldApp.java:package javawork.helloworld; /*把编译生成的所有.clas

22、s文献放到包 javawork.helloworld中*/import java.awt.*; /告诉编译器本程序中用到系统的AWT包import javawork.newcentury; /*告诉编译器本程序中用到顾客自定义的包javawork.newcentury*/public class HelloWorldApp. /*公共类HelloWorldApp的定义, 名字与文献名相似*/class TheFirstClass. /第一种一般类TheFirstClass的定义class TheSecondClass. /第二个一般类TheSecondClass的定义. /其他一般类的定义in

23、terface TheFirstInterface. /*第一种接口TheFirstInterface的定义*/. /其他接口定义package语句:由于java编译器为每个类生成一种字节码文献,且文献名与类名相似,因此同名的类有也许发生冲突。为理解决这一问题,java提供包来管理类名空间,包实际提供了一种命名机制和可见性限制机制。而在java的系统类库中,把功能相似的类放到一种包(package)中,例如所有的图形界面的类都放在java.awt这个包中,与网络功能有关的类都放到这个包中。顾客自己编写的类(指.class文献)也应当按照功能放在由程序员自己命名的相应的包中,例如上例中的java

24、work.helloworld就是一种包。包在实际的实现过程中是与文献系统相相应的,例如javawork.helloworld所相应的目录是pathjavaworkhelloworld,而path是在编译该源程序时指定的。例如在命令行中编译上述HelloWorldApp.java文献时,可以在命令行中敲入javac -d f:javaproject HelloWorldApp.java,则编译生成的HelloWorldApp.class文献将放在目录f:javaprojectjavaworkhelloworld目录下面,此时f:javaprojcet相称于path。但是如果在编译时不指定pat

25、h,则生成的.class文献将放在编译时命令行所在的目前目录下面。例如在命令行目录f:javaproject下敲入编译命令javac HelloWorldApp.java,则生成的HelloWorldApp.class文献将放在目录f:javaproject下面,此时的package语句相称于没起作用。但是,如果程序中涉及了package语句,则在运营时就必须涉及包名。例如,HelloWorldApp.java程序的第一行语句是:package p1.p2;编译的时候在命令行下输入javac -d path HelloWorldApp.java,则HelloWorldApp.class将放在目

26、录pathp1p2的下面,这时候运营该程序时有两种方式:第一种:在命令行下的path目录下输入字符java p1.p2.HelloWorldApp。第二种:在环境变量classpath中加入目录path,则运营时在任何目录下输入java p1.p2.HelloWorldApp即可。import语句:如果在源程序中用到了除java.lang这个包以外的类,无论是系统的类还是自己定义的包中的类,都必须用import语句标记,以告知编译器在编译时找到相应的类文献。例如上例中的java.awt是系统的包,而javawork.newcentury是顾客自定义的包。例如程序中用到了类Button,而But

27、ton是属于包java.awt的,在编译时编译器将从目录classpathjavaawt中去寻找类Button,classpath是事先设定的环境变量,例如可以设为:classpath=.;d:jdk1.3lib。 classpath也可以称为类途径,需要提示人们注意的是,在classpath中往往涉及多种途径,用分号隔开。例如classpath=.;d:jdk1.3lib中的第一种分号之前的途径是一种点,表达目前目录,分号背面的途径是d:jdk1.3lib,表达系统的原则类库目录。在编译过程中寻找类时,先从环境变量classpath的第一种目录开始往下找,例如先从目前目录往下找java.aw

28、t中的类Button时,编译器找不着,然后从环境变量classpath的第二个目录开始往下找,就是从系统的原则类库目录d:jdk1.3lib开始往下找java.awt的Button这个类,最后就找到了。如果要从一种包中引入多种类则在包名后加上.*表达。如果程序中用到了顾客自己定义的包中的类,如果在上面程序中要用到javawork.newcentury包中的类HelloWorldApp,而包javawork.newcentury所相应的目录是f:javaprojectjavaworknewcentury,classpath仍旧是classpath=.;d:jdk1.3lib,则编译器在编译时将一

29、方面从目前目录寻找包javawork.newcentury,成果是没有找到;然后又从环境变量classpath的第二个目录d:jdk1.3lib开始往下找,但是仍然没有找到。因素在于包javawork.newcentury是放在目录f:javaproject下面。因此,需要重新设定环境变量classpath,设为classpath=.;d:jdk1.3lib;f:javaproject 。因此编译器从f:javaproject开始找包javawork.newcentury就可以找到。源文献的命名规则:如果在源程序中包具有公共类的定义,则该源文献名必须与该公共类的名字完全一致,字母的大小写都必须

30、同样。这是java语言的一种严格的规定,如果不遵守,在编译时就会出错。因此,在一种java源程序中至多只能有一种公共类的定义。如果源程序中不涉及公共类的定义,则该文献名可以任意取名。如果在一种源程序中有多种类定义,则在编译时将为每个类生成一种.class文献。1.5.2 java编程规范软件开发是一种集体协作的过程,程序员之间的代码是常常要进行互换阅读的,因此,java源程序有某些商定成俗的命名规定,重要目的是为了提高java程序的可读性。包名:包名是全小写的名词,中间可以由点分隔开,例如:java.awt.event;类名:首字母大写,一般由多种单词合成一种类名,规定每个单词的首字母也要大写

31、,例如class HelloWorldApp;接口名:命名规则与类名相似,例如interface Collection;措施名:往往由多种单词合成,第一种单词一般为动词,首字母小写,中间的每个单词的首字母都要大写,例如:balanceAccount,isButtonPressed;变量名:全小写,一般为名词,例如:length;常量名:基本数据类型的常量名为全大写,如果是由多种单词构成,可以用下划线隔开,例如:int YEAR, int WEEK_OF_MONTH;如果是对象类型的常量,则是大小写混合,由大写字母把单词隔开。JAVA教程 第一讲 Java语言概述(8)1.5.3 java协助文

32、档java中所有类库的简介都保存在java协助文档中,程序员在编程过程中,必须查阅该协助文档,理解系统提供的类的功能、成员措施、成员变量等等信息后来,才可以更好的编程。同步,java开发工具包(JDK)提供了java、javac、javadoc、appletviewer等命令,在java协助文档中也对此进行了具体的简介。java协助文档是以HTML文献的形式组织,一般是安装在JDK目录下的docs子目录中的index.html文献,因此用浏览器就可以进行查阅。例如JDK是安装在D:jdk1.3目录下面,则用浏览器打开D:jdk1.3docsindex.html文献,就可以看到图1_5_1所示的

33、协助文档。 如果但愿查阅JDK的命令,则可以选择Tool Documentation。 此时浏览器就会把java、javac、javadoc、appletviewer等命令列出来。 但是大多时时候,我们需要查阅的是类库的文档,因此需要在D:jdk1.3docsindex.html文献中选择Java 2 Platform API Specification,如图1_5_4中红字所示。 然后就进入了具体的类库简介,如图1_5_5所示。1.5.4 java注释单行注释:从/开始到本行结束的内容都是注释,例如: /这是一行单行注释 /则是另一行单行注释多行注释:在/*和*/之间的所有内容都是注释,例如

34、:/*这是一段注释分布在多行之中*/ 文档注释:在注释方面java提供一种C/C+所不具有的文档注释方式。其核心思想是当程序员编完程序后来,可以通过JDK提供的javadoc命令,生成所编程序的API文档,而该文档中的内容重要就是从文档注释中提取的。该API文档以HTML文献的形式浮现,与java协助文档的风格与形式完全一致。但凡在/*和*/之间的内容都是文档注释。例如下面的DocTest.java文献:/* 这是一种文档注释的例子,重要简介下面这个类 */public class DocTest/* 变量注释,下面这个变量重要是充当整数计数 */public int i;/* 措施注释,下面

35、这个措施的重要功能是计数 */public void count( ) 通过在命令行下面运营javadoc -d . DocTest.java,就生成了简介类DocTest的index.html文献,用浏览器浏览成果,注意到DocTest.java文献中的文档注释的内容都出目前该index.html文献中。JAVA教程 第一讲 Java语言概述(9)-1.6 建立java开发环境1.6.1 安装Java Develop Kit(JDK)Sun公司为所有的java程序员提供了一套免费的java开发和运营环境,取名为Java2 SDK,可以从,也可以从同方教育网站上下载。但是最新的消息和版本必须从

36、Sun的网站上才可以得到。安装的时候可以选择安装到任意的硬盘驱动器上,例如安装到D:jdk1.3目录下。一般在JDK目录下有bin、demo、lib、jre等子目录,其中bin目录保存了javac、java、appletviewer等命令文献,demo目录保存了许多java的例子,lib目录保存了java的类库文献,jre保存的是java的运营时环境。1.6.2 安装java协助文档由于JDK的安装程序中并不涉及协助文档,因此也必须从Sun的网站上下载进行安装。一般安装在JDK所在目录的docs子目录下面。用浏览器打开docs子目录下的index.html文献就可以阅读所有的协助文档。1.6.

37、3 配备类途径在安装完JDK之后,必须配备类途径classpath和环境变量path,JDK才可以正常运营。如果是在windows98中运营,则在C:autoexec.bat文献的末尾添加下列语句:classpath= .;d:jdk1.3lib;path=%path%;d:jdk1.3bin;如果是在windows中,则需要用右键单击桌面上我的电脑,选择属性,则弹出一种名为系统特性的窗口,选择高档,然后选择环境变量,在环境变量窗口中编辑classpath和path。 【本讲小结】java语言的产生来源于Sun Microsystems公司为消费电子产品上应用程序的开发寻找一门编程语言的过程中

38、,而随着互联网时代的到来,原有的Oak软件就顺理成章的改导致java语言推向了市场,其跨平台、面相对象、安全等特点使其得到广泛的应用。通过在不同的软硬件上实现的java虚拟机,java的字节码文献就可以跨平台的进行运营,无用内存自动回收器也给程序员带来了极大的以便。java程序以两种方式进行运营,一种是通过java虚拟机进行直接运营的java application,另一种是通过浏览器进行运营的java applet,但是无论是何种方式,java都是一门纯正的面向对象的编程语言。面向对象编程的思路觉得程序都是对象的组合,因此要克服面向过程编程的思路,直接按照对象和类的思想去组织程序,面向对象所

39、具有的封装性、继承性、多态性等特点使其具有强大的生命力。Sun公司为全世界java开发人员提供了一套免费的软件开发包Java2 SDK,也称为JDK,它不仅是java的开发平台,还是java的运营平台。java源程序寄存在.java文献中,可以通过任意一种文本编辑器编辑产生,源程序通过javac命令编译过后,就生成了相应的.class文献,而用java命令就可以运营.class文献。作为面向对象编程人员来说,大体可以分为两种:类创立者和应用程序员,应用程序员是类的使用者。因此对程序的可读性和API协助文档就有规定,java语言自身有一套商定成俗的编程规范,同步程序员一方面要学会阅读系统API协

40、助文档,还要学会生成自己编写的程序的API协助文档。JAVA教程 第二讲 Java语言基本知识(1)-21简朴数据类型211 标记符和保存字1标记符程序员对程序中的各个元素加以命名时使用的命名记号称为标记符(identifier)。Java语言中,标记符是以字母,下划线(_),美元符($)开始的一种字符序列,背面可以跟字母,下划线,美元符,数字。例如,identifier,userName,User_Name,_sys_val, $change为合法的标记符,而2mail room#,class 为非法的标记符。2保存字具有专门的意义和用途,不能当作一般的标记符使用,这些标记符称为保存字(re

41、served word),也称为核心字,下面列出了java语言中的所有保存字:bstract,break,byte,boolean,catch,case,class,char,continue,default,double,do,else,extends,false,final,float,for,finally,if,import,implements,int,interface,instanceof,long,length,native,new,null,package,private,protected,public,return,switch,synchronized,short,st

42、atic,super,try,true,this,throw,throws,threadsafe,transient,void,while 。java语言中的保存字均用小写字母表达。212 数据类型概 1 java中的数据类型划分java语言的数据类型有简朴类型和复合类型:简朴数据类型涉及:整数类型(Integer):byte, short, int, long浮点类型(Floating):float,double字符类型(Textual):char布尔类型(Logical):boolean复合数据类型涉及:classinterface数组2常量和变量常量:用保存字final来实现final

43、typeSpecifier varName=value,varName=value; 如:final int NUM=100;变量:是java 程序中的基本存储单元,它的定义涉及变量名、变量类型和作用域几种部分。其定义格式如下:typeSpecifier varName=value,varName=value; 如:int count; char c=a;变量的作用域指明可访问该变量的一段代码,声明一种变量的同步也就指明了变量的作用域。按作用域来分,变量可以有下面几种:局部变量、类变量、措施参数和例外解决参数。在一种拟定的域中,变量名应当是唯一的。局部变量在措施或措施的一种块代码中声明,它的作

44、用域为它所在的代码块(整个措施或措施中的某块代码)。类变量在类中声明,而不是在类的某个措施中声明,它的作用域是整个类。措施参数传递给措施,它的作用域就是这个措施。例外解决参数传递给例外解决代码,它的作用域就是例外解决部分。JAVA教程 第二讲 Java语言基本知识(2)213 简朴数据类型1布尔类型-boolean布尔型数据只有两个值true和false,且它们不相应于任何整数值。布尔型变量的定义如:boolean b=true; 2字符类型-char字符常量:字符常量是用单引号括起来的一种字符,如a,A;字符型变量:类型为char,它在机器中占16位,其范畴为065535。字符型变量的定义如

45、:char c=a; /*指定变量c为char型,且赋初值为a*/3整型数据整型常量: 十进制整数 如123,456,0 八进制整数 以0开头,如0123表达十进制数83,011表达十进制数9。 十六进制整数 以0x或0X开头,如0x123表达十进制数291,0X12表达十进制数18。整型变量:数据类型 所占位数 数的范畴 byte 8 -2727-1 bhort 16 -215215-1 int 32 -231231-1 long 64 -263263-1 4浮点型(实型)数据实型常量: 十进制数形式 由数字和小数点构成,且必须有小数点,如0.123, 1.23, 123.0 科学计数法形式

46、 如:123e3或123E3,其中e或E之前必须有数字,且e或E背面的指数必须为整数。 float型的值,必须在数字后加f或F,如1.23f。实型变量:数据类型 所占位数 数的范畴 float 32 3.4e-038 3.4e+038 double 64 1.7e-038 1.7e+038 5简朴数据类型的例子:【例21】public class Assign public static void main (String args ) int x , y ; /定义x,y两个整型变量float z = 1.234f ; /指定变量z为float型,且赋初值为1.234double w = 1

47、.234 ; /指定变量w为double型,且赋初值为1.234boolean flag = true ; /指定变量flag为boolean型,且赋初值为truechar c ; /定义字符型变量cString str ; /定义字符串变量strString str1 = Hi ; /指定变量str1为String型,且赋初值为Hic = A ; /给字符型变量c赋值Astr = bye ; /给字符串变量str赋值byex = 12 ; /给整型变量x赋值为12y = 300; /给整型变量y赋值为300214 简朴数据类型中各类型数据间的优先关系和互相转换1不同类型数据间的优先关系如下:

48、低-高byte,short,char- int - long - float - double2自动类型转换规则整型,实型,字符型数据可以混合运算。运算中,不同类型的数据先转化为同一类型,然后进行运算,转换从低档到高档;操作数1类型 操作数2类型 转换后的类型 byte、short、char int int byte、short、char、int long long byte、short、char、int、long float float byte、short、char、int、long、float double double 3强制类型转换高档数据要转换成低档数据,需用到强制类型转换,如:i

49、nt i;byte b=(byte)i; /*把int型变量i强制转换为byte型*/JAVA教程 第二讲 Java语言基本知识(3) 时间 : -06-07 作者:许斌 编辑:Mr.阿布 点击: 245 评论 -22 运算符和体现式 221 运算符 对多种类型的数据进行加工的过程成为运算,表达多种不同运算的符号称为运算符,参与运算的数据称为操作数,按操作数的数目来分,可有: 一元运算符:, 二元运算符:, 三元运算符:?:基本的运算符按功能划分,有下面几类:1算术运算符: +,*,/,%,+,。 例如:3+2;a-b;i+;-i;2关系运算符: ,=,3; I=0; n!=-1;3布尔逻辑运

50、算符: !,&,| 。 例如:flag=true; !(flag);flag&false; 4位运算符: ,&,|,。 例如:a=10011101; b=00111001;则有如下成果:a3 =11110011 a3=00010011;a&b=00011001; a|b=10111101;a=01100010; ab=10100100; 5赋值运算符 =,及其扩展赋值运算符如+=,=,*=,/=等。 例如:i=3; i+=3; /等效于i=i+3; 6条件运算符 ? :例如:result=(sum= =0 ? 1 : num/sum); 7其他:涉及分量运算符 ,下标运算符 ,实例运算符ins

51、tanceof,内存分派运算符new,强制类型转换运算符 (类型),措施调用运算符 () 等。例如:System.out.println(hello world);int array1=new int4;222 体现式体现式是由操作数和运算符按一定的语法形式构成的符号序列。一种常量或一种变量名字是最简朴的体现式,其值即该常量或变量的值;体现式的值还可以用作其她运算的操作数,形成更复杂的体现式。1体现式的类型体现式的类型由运算以及参与运算的操作数的类型决定,可以是简朴类型,也可以是复合类型:布尔型体现式: x&y|z;整型体现式: num1+num2;2运算符的优先顺序 体现式的运算按照运算符的

52、优先顺序从高到低进行,同级运算符从左到右进行:优先顺序 运算符 1 . () 2 + - ! instanceof 3 new (type) 4 * / % 5 + - 6 = = 8 = = != 9 & 10 11 | 12 & 13 | 14 ?: 15 = += -= *= /= %= = 16 &= |= = = 例如,下述条件语句分四步完毕:Result=sum=0?1:num/sum;第1步:result=sum=0?1:(num/sum)第2步:result=(sum=0)?1:(num/sum)第3步:result=(sum=0)?1:(num/sum)第4步:result=

53、JAVA教程 第二讲 Java语言基本知识(4)23控制语句Java程序通过控制语句来执行程序流,完毕一定的任务。程序流是由若干个语句构成的,语句可以是单一的一条语句,如c=a+b,也可以是用大括号括起来的一种复合语句。Java中的控制语句有如下几类: 分支语句:if-else, switch 循环语句:while, do-while, for 与程序转移有关的跳转语句:break, continue, return 例外解决语句:try-catch-finally, throw 注释语句:/,/* */, /* */ 231 分支语句分支语句提供了一种控制机制,使得程序的执行可以跳过某些语句

54、不执行,而转去执行特定的语句。1条件语句 if-elseif(boolean-expression)statement1;else statement2;2多分支语句 switchswitch (expression)case value1 : statement1;break;case value2 : statement2;break;case valueN : statemendN;break;default : defaultStatement; 体现式expression的返回值类型必须是这几种类型之一:int,byte,char,short。 case子句中的值valueN必须是常

55、量,并且所有case子句中的值应是不同的。 default子句是可选的。break语句用来在执行完一种case分支后,使程序跳出switch语句,即终结switch语句的执行(在某些特殊状况下,多种不同的case值要执行一组相似的操作,这时可以不用break)。232 循环语句循环语句的作用是反复执行一段代码,直到满足终结循环的条件为止。Java语言中提供的循环语句有: while语句 do-while语句 for语句 1while语句initializationwhile (termination)body;iteration;2do-while语句initializationdo body;iteration; while (termination);3for语句for (initialization; termination; iteration)body; for语句执行时,一方面执行初始化操作,然后判断终结条件与否满足,如果满足,则执行循环体中的语句,最后执行迭代部分。完毕一次循环后,重新判断终结条件。 初始化、终结以及迭代部分都可觉得空语句(但分号不能省),三者均为空的时候,相称于一种无限循环。 在初始化部分和迭代部分可以使用逗号语句,来进行多种操作。逗号语句是用逗号分隔的语句序列。for( i=0, j=10; ij; i+, j-)

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!