JAVA语言基础讲解

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

JAVA语言基础计算机语言概述Java语言基础Java面向对象的程序设计Java异常处理计算机语言概述程序设计语言虚拟机、Java虚拟机与Java运行环境Java程序的运行Java程序的开发、执行流程程序设计语言(一)按发展过程来分:机器语言、汇编程序设计语言、高级程序设计语言。机器语言:不须翻译即由计算机直接执行的指令叫做机器指令,这些指令的集合叫做机器语言;汇编语言是一种面向机器的程序设计语言,它用符号表示机器指令;高级语言:由于汇编语言仍然没有解决对硬件的依赖,人们希望使用的程序语言能够独立于机器进行数据描述,采用与英语语法相类似的语法结构。这样的程序语言更直观、更方便,便于移植。于是产生了高级语言。按语言程序的翻译方式不同,语言翻译程序分为解释型翻译程序和编译型翻译程序。解释型翻译程序在语言程序翻译时,它读入源程序一句,翻译一句,执行一句,这样反反复复直到最终完成。Basic语言是典型的解释型语言。编译型翻译程序也叫编译程序,它在翻译语言程序时,加工整个源程序,最终翻译成机器语言,然后交给计算机执行。编译程序有利于目标程序的优化,有利于提高目标程序的运行速度。Fortran语言、C语言、Pascal语言都是编译型语言。程序设计语言(二)面向过程,也就是结构化程序设计是一种自顶向下逐步求精的设计方法,和单入口单出口的程序结构。分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了;面向对象,以事物为中心的编程思想,把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为;程序设计语言(三)程序设计语言(四)函数式编程和命令式编程命令式编程(ImperativeProgramming)是一种用程序状态描述计算的方法,使用这种泛型的编程人员用语句改变程序状态;函数式编程(FunctionalProgramming)是一种强调表达式的计算而非命令的执行的一种编程风格。表达式是用函数结合基本值构成的,它类似于用参数调用函数;虚拟机、Java虚拟机与Java运行环境编译程序与操作系统和计算机硬件有关,为了提高编译程序的可移植性,提出了虚拟机的理论。虚拟机好似通用的计算机,有自己的指令系统,但本身没有实际的硬件。为了虚拟机代码可以执行,必须有虚拟机实时运行支持系统把虚拟机代码转换成相应硬件机器的代码,然后加以执行。有了虚拟机,编译程序首先把语言程序翻译成虚拟机代码,这样的编译程序可移植性就大大提高了一种虚拟机,从结构上看它与实际的计算机相似,它的作用是使得一台实际的机器能够运行Java字节码程序。Java字节码是Java源程序编译后的程序,它不能被计算机直接执行,但它可以被所有的Java虚拟机执行。这就是Java字节码程序可以在网络上移植的原因。Java虚拟机(JVM-JavaVirtualMachine)Java程序必须有自己的运行环境(Java平台)。一个Java运行环境包括实际计算机、适配器、Java虚拟机、Java基本软件和Java应用程序接口。利用Java语言可以开发两种形式的应用程序:Java应用程序(JavaApplication)和Java小应用程序(JavaApplet)。Java小应用程序是借助浏览器运行的程序。Java程序的运行Java程序是半编译半解释型语言,其程序的运行过程与编译型和解释型语言都不同首先,编译程序将Java源程序编译成与实际计算机无关的字节码,然后Java运行系统解释并执行字节码Java程序的开发、执行流程Java的源程序可以用任何编辑程序进行编辑,然后以纯文本方式存储在文件中,文件必须以Java作为后缀;Java源程序由Java编译器编译成字节码,存储在以class为后缀的文件中,最后由运行系统解释和执行;Java术语JDK:JavaDevelopmentKitJRE:JavaRuntimeEnvironmentSE:StandardEditionEE:EnterpriseEditionME:MicroEdition其它过时术语:Java2,J2SE,J2ME,J2EE,JavaSDKJava语言基础一个简单的Java程序实例标识符、注释和分隔符变量和常量运算符及表达式运算符的优先级数据类型转换简单语句和复合语句控制语句Java程序实例Point类publicclassPoint{//类首部intx;//类体开始inty;publicPoint(){//构造方法,方法名与类名保持相同x=0;//无方法参数列表时,构造原点(0,0)y=0;}publicPoint(intX,intY){//构造方法,与上一构造方法不同x=X;//它有参数列表按给定的X、Y值构y=Y;}publicdoubledistance(){//方法distance(),求点到坐标原点的距离returnMath.sqrt(x*x+y*y);//调用Math类的方法sqrt()}publicvoiddraw(){//方法draw(),画点,但未完整实现}//方法体是空语句publicstaticvoidmain(Stringargs[]){//main()方法,类运行时的入口System.out.println(“PointCalss!“)//在屏幕上显示PointCalss!}}//类体结束上述程序是由类首部、类体两大部分组成,类体描述类的成员变量和方法。★类首部classPoint类首部定义类的名字Point。保留字class和类名之间应至少留有一个空格。★类体类体位于类名后面左大括号“{”和结束类体的右大括号“}”之间。类体定义了类的成员变量和方法。标识符、注释和分隔符标识符、注释和分隔符程序中要用到许多名字,诸如类、变量、方法的名字。标识符就是用来标记它们的名字的。★Java标识符的规则是:标识符是以字母、下划线或美元符$开头的字母、下划线、数字的序列。标识符的长度是任意的。标识符分为两类:保留字及用户定义标识符保留字保留字是Java预定义的标识符,这些标识符都是具有特定的含义。保留字又称关键字。用户定义标识符用户定义的标识符用来为程序设计者根据自己的需要定义的类、变量、方法、接口等取名。用户在定义标识符时应注意:1.禁止用保留字作为用户标识符2.遵守先定义后使用的原则。即只有定义了的标识符,才可在语句部分使用。保留字、用户定义标识符注释用来对程序中的代码作出解释。注释的内容在程序编译时,不产生目标码Java有三种注释形式:1.“//”单行注释。表示从此向后,直到行尾都是注释。2.“/*……*/“块注释。在“/*”和“*/”之间都是注释,块注释不能嵌套。3.“/**……*/”文档注释。所有在“/**”和“*/”之间的内容可以用来自动形成文档。注释空格、逗号、分号及行结束符称为分隔符,规定任意两个相邻标识符、数、保留字或两个语句之间必须至少有一个分隔符,以便编译程序能识别。为便于阅读,程序也需要如同自然语言一样,恰当地使用分隔符。值得指出的是,这些分隔符不能互相代用,即该用空格的地方只能用空格,该用逗号的地方只能用逗号分隔符变量类型Java语言是一种强类型的语言,这意味着所有的变量和表达式在编译期间都有一个类型。Java的类型有两种:基本类型(primitivetypes)和引用类型(referencetypes)。8种基本类型:布尔类型(boolean)(不能与整型值进行相互转换)数值类型(numeric):float,double整型(integral):byte,short,int,longchar(用UTF-16的编码描述一个代码单元,16位或32位)引用类型:类(class)接口(interface)数组(array)空类型(null)变量名在Java中用标识符来表示变量名,变量名与方法名可以重名(但这通常不是好的做法),C++中不能;任何类型的变量定义时,如果没有初始化,都会赋予默认值,数值类型默认值为0,布尔类型默认值为false.引用类型默认值为null;变量定义的方式:“类型变量名表”,说明多个变量为同一类型时,变量名之间用逗号分隔;变量定义变量的作用域是指什么范围的程序可以访问该变量变量按作用域分为:类成员变量、方法参数、局部变量、异常处理变量。局部变量是方法体内说明的变量,按局部变量说明的部位,它的作用域可以是整个说明它的方法体,也可以是方法体内一程序段。变量的作用域Java变量与C/C++变量区别可以将Java的对象变量看作C++的对象指针;Java不区分变量的声明与定义;一个对象变量并没有实际包含一个对象,而仅仅是引用一个对象,所以定义一个对象变量时(如Pointp;),其实仅仅“声明”它可以引用这种类型的对象,还不能对用变量执行方法,除非明确将该变量引用一个已存在的对象(如Pointp=newPoint(););常量是指在程序运行过程中其值不变的量常量在表达式中用文字串表示,它区分不同类型,如整形常量123、-15实型常量12.1f字符常量’x’,布尔常量true字符串类型常量“Test”常量整数常量有三种表示形式:(1)十进制整数,如33,58,-90(2)八进制整数,以0当头,如010表示十进制的8,-015表示十进制的-13(3)十六进制整数,以0x或0X当头,如0x10表示十进制的16,-0X15表示十进制的-21Java缺省整数常量类型为int类型,用4个字节表示如果要表示long类型整数需要在整数后加上后缀L或l,表示它为长整数。例如:1234567L、87654320l整数常量整型有int、short、long、byte,由于byte和short类型表示的数范围较小,不常使用;Java没有任何无符号类型(unsigned);整型类型存储需求取值范围int4字节-2147483648~2147483647(超过正负21亿)short2字节-32768~32767long8字节-9223372036854775808~9223372036854775807byte1字节-128~127浮点型是带有小数部分的数据类型,也叫实型Java包括两种不同的实型:float和double一个float类型的变量占用4个字节(32位)double类型的数据则需要8个字节(64位)内存Java缺省的浮点型常数是double型,如果要表示float型,要在数字后加后缀F或f。如果要表示double型,在数字后加后缀D或d浮点型用于表达两个逻辑状态之一的值:true(真)或false(假)。Java不可将布尔类型看做整型值布尔型变量说明如下:booleanaBooleanVar;booleanb=false;布尔型Java的字符使用Unicode编码,用16位来表示,它可以支持世界上所有语言。一般计算机语言通常使用ASCII码,用8位表示一个字符。ASCII码是Unicode码的一个子集,Unicode表示ASCII码时,其高位为0,它是其前255个字符。Unicode字符通常用十六进制。字符型常量字符常数就是用两个单引号括起来的一个ASCII码字符集中的字符。例如:′A′;′a′;′2′“\”称为转义符,意思是转变了其后继字符的含义字符型字符型变量字符型变量的类型是char,计算机用16位来表示。其值范围0-65535。字符型变量说明如下:charch=’a’;字符串常量一个字符串常量是括在两个双引号之间的字符序列。若两个双引号之间没有任何字符,则为空串。Java允许在字符串中出现转义字符包装类所有的Java基本类型(primitivetypes)都有其对应的包装类(WrapperClasses)。包装类的作用一是为某一类型相关的方法和变量提供一个家,二是将原始类型包装成类以便为某些只能

1 / 108
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功