电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

二级Java复习资料 (1)

36页
  • 卖家[上传人]:ns****g
  • 文档编号:113477613
  • 上传时间:2019-11-08
  • 文档格式:DOCX
  • 文档大小:187.35KB
  • / 36 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、一、Java的历史、现状1.Java历史在上世纪90年代初,sun公司有一个叫做Green的项目,目的是为家用消费电子产品开发一个分布式代码系统,这样就可以对家用电器进行控制,和它们进行信息交流。詹姆斯高斯林(JamesGosling)等人基于C+开发一种新的语言Oak(Java的前身)。Oak是一种用于网络的精巧而安全的语言。Sun公司曾依此投标一个交互式电视项目,但结果是被SGI打败,Sun打算抛弃Oak。随着互联网的发展,Sun看到了Oak在计算机网络上的广阔应用前景,于是改造Oak,在1995年5月以“Java”的名称正式发布,从此Java走上繁荣之路。当然提到Java历史,不得不提的一个故事就是Java的命名。开始“Oak”的命名是以项目小组办公室外的树而得名,但是Oak商标被其他公司注册了,必须另外取一个名字,传说有一天,几位Java成员组的会员正在讨论给这个新的语言取什么名字,当时他们正在咖啡馆喝着Java(爪哇)咖啡,有一个人灵机一动说就叫Java怎样,得到了其他人的赞同,于是,Java这个名字就这样传开了。当然对于传说,了解一下就好了,不必过于认真。2.Java作为学

      2、习Java的人士,对Java历史上发生的大事件有一个了解是应该的。JDK(JavaSoftwareDevelopKit):Java软件开发工具包。JDK是Java的核心,包括了Java运行环境,一系列Java开发工具和Java基础的类库。目前主流的JDK是Sun公司发布的JDK,除了Sun之外,还有很多公司和组织都开发了自己的JDK,例如IBM公司开发的JDK,BEA公司的Jrocket,还有GNU组织开发的JDK等等。3.Java特点简单地说,Java具有如下特点:简单的、面向对象、平台无关、多线程、分布式、安全、高性能、可靠的、解释型、自动垃圾回收等特点。这里只解释一下平台无关和分布式,其余的在后面会逐步接触到。3.1平台无关所谓平台无关指的是:用Java写的程序不用修改就可在不同的软硬件平台上运行。这样就能实现同样的程序既可以在Windows下运行,到了Unix或者Linux环境不用修改就直接可以运行了。Java主要靠Java虚拟机(JVM)实现平台无关性。平台无关性就是一次编写,到处运行:Write Once, Run Anywhere3.2分布式分布式指的是:软件由很多个可以

      3、独立执行的模块组成,这些模块被分布在多台计算机上,可以同时运行,对外看起来还是一个整体。也就是说,分布式能够把多台计算机集合起来就像一台计算机一样,从而提供更好的性能。4.Java标准组织JCPJCP(Java Community Process) 是一个开放的国际组织,成立于 1995 年,主要职能是发展和更新 Java 技术规范、参考实现(RI) 、技术兼容包(TCK) 。Java 技术和 JCP 两者的原创者都是 SUN 计算机公司。组织成员可以提交 JSR(Java Specification Requests) ,通过讨论、认可、审核以后,将进入到下一版本的规范里面。也就是说 JCP 是目前 Java 技术发展事实上的控制者和领领导者。二、Java从代码到运行用一个图来描述这个过程会比较容易理解:1.编写代码首先把我们想要计算机做的事情,通过 Java 表达出来,写成 Java 文件,这个过程就是编写代码的过程。如上图所示的 Hello.java 文件。2.编译写完 Java 代码后,机器并不认识我们写的 Java 代码,需要进行编译成为字节码,编译后的文件叫做 class

      4、文件。如上图所示的 Hello.class 文件。3.类装载ClassLoader类装载的功能是为执行程序寻找和装载所需要的类。ClassLoader能够加强代码的安全性,主要方式是:把本机上的类和网络资源类相分离, 在调入类的时候进行检查,因而可以限制任何“特洛伊木马”的应用。4.字节码(byte-code)校验功能是对 class 文件的代码进行校验,保证代码的安全性。Java 软件代码在实际运行之前要经过几次测试。JVM 将代码输入一个字节码校验器以测试代码段格式并进行规则检查-检查伪造指针、 违反对象访问权限或试图改变对象类型的非法代码。注意-所有源于网络的类文件都要经过字节码校验器字节码校验器对程序代码进行四遍校验, 这可以保证代码符合JVM 规范并且不破坏系统的完整性。如果校验器在完成四遍校验后未返回出错信息,则下列各点可被保证:- 类符合JVM规范的类文件格式- 无访问限制异常- 代码未引起操作数栈上溢或下溢- 所有操作代码的参数类型将总是正确的- 无非法数据转换发生,如将整数转换为对象引用- 对象域访问是合法的5.解释(Interpreter)可是机器也不能认识 cla

      5、ss 文件,还需要被解释器进行解释,机器才能最终理解我们所要表达的东西。6.运行最后由运行环境中的 Runtime 对代码进行运行,真正实现我们想要机器完成的工作。7.说明由上面的讲述,大家看到,Java通过一个编译阶段和一个运行阶段,来让机器最终理解我们想要它完成的工作,并按照我们的要求进行运行。在这两个阶段中,需要我们去完成的就是编译阶段的工作,也就是说:我们需要把我们想要机器完成的工作用 Java 语言表达出来,写成 Java 源文件,然后把源文件进行编译,形成 class 文件, 最后就可以在 Java 运行环境中运行了。 运行阶段的工作由 Java 平台自身提供,我们不需要做什么工作。三、Java程序设计基础1.Java编程概况现在你可以复习一下Java语言的背景材料,它的基本结构象C/C+,但任何用面向过程语言编写过程序的人都可以了解Java语言的大部分结构.1.1程序结构Java语言的源程序代码由一个或多个编译单元(compilationunit)组成,每个编译单元只能包含下列内容(空格和注释除外):*一个程序包语句(packagestatement)*入口语句(impo

      6、rtstatements)*类的声明(classdeclarations)*界面声明(interfacedeclarations)每个Java的编译单元可包含多个类或界面,但是每个编译单元最多只能有一个类或者界面是公共的。Java的源程序代码被编译后,便产生了Java字节代码。Java的运行系统工作起来如同一台虚拟机。在当前的Java实现中,每个编译单元就是一个以.java为后缀的文件。每个编译单元有若干个类,编译后,每个类生成一个.class文件。.class文件是Java虚拟机能够识别的代码。1.2注释三种类型如下:/注释一行/*一行或多行注释*/*文档注释*/文档注释一般放在一个变量或函数定义前,指示在任何自动生成文档系统中调入。1.3标识符变量,函数,类和对象的名称都是标识符,程序员需要标识和使用的东西都需要标识符。在Java语言里,标识符以字符或_,$开头,后面可以包含数字,标识符是大小写有区别的,没有长度限制。有效的标识符mynameict_networkHello_sys_path$bill例子:inta_number;char_onechar;float$bill;1.

      7、4数据类型Java使用五种基本类型:integer(整数),floating(浮点数),point(指针),Boolean(布尔变量),CharacterorString(字符或字符串)。integer整数下边给出的数据表示都是整数的例子:4,15,089,0xAD00整数长度数据类型表示8bitsbyte16bitsshort32bitsint64bitslongfloating浮点数下边给出的数据表示都是浮点数的例子:6.37,3.7E15,3e8浮点数长度数据类型表示32bitsfloat64bitsdoubleBoolean布尔变量下边是布尔变量的两种可能取值:truefalseCharacter字符下边给出的都是字符的例子:at(tab)u?(unicode)String字符串下边给出的都是字符串的例子:Thisisastringliteral中国科学院计算所数组你可以定义任意类型的数组.chars;这是字符型数组;intarray;这是整型数组;你还可以定义数组的数组.intblock=newint23;数组边界在运行时被检测,避免堆栈溢出和内存崩溃.在Java里,数组实际

      8、上是一个对象,数组有一个成员变量:length。你可以用这个成员函数来查看任意数组的长度.inta=newint103a.length/*10*/a0.length/*3*/创建数组在Java里创建数组,你可使用两种基本方法:创建一个空数组:intlist=newint50;或你可以用初始数值填充数组.Stringnames=Chenji,Yuan,Chun,Yang;相当于下面功能:Stringnames;names=newString4;names0=newString(Chenji);names1=newString(Yuan);names2=newString(Chun);names3=newString(Yang);在编译时你不能象下例那样创建静态数组。intname50;/将产生一个编译错误你也不能用new操作去填充一个没定义大小的数组。intname;for(inti=0;i1.5表达式Java语言的表达式和C语言非常类似。运算符运算符(operator)优先级从高到底排列如下:.()+-!instanceof*/%+-=!=&|?:=op=,整数运算符在整数运算时,如果

      9、操作数是long类型,则运算结果是long类型,否则为int类型,绝不会是byte,short或char型。这样,如果变量i被声明为short或byte,i+1的结果会是int。如果结果超过该类型的取值范围,则按该类型的最大值取模。单目整数运算符是:运算符操作-单目非位补码+加1-减1+运算符用于表示直接加1操作。增量操作也可以用加运算符和赋值操作间接完成。+lvalue(表示lvalue+=1,+lvalue也表示lvalue=lvalue+1(只要lvalue没有副作用)。-运算符用于表示减1操作。+和-运算符既可以作为前缀运算符,也可以做为后缀运算符。双目整数运算符是:运算符操作*+加-减*乘/除%取模&位与|位或位异或=,=和!=产生boolean类型的数据。布尔运算符布尔(boolean)变量或表达式的组合运算可以产生新的boolean值。单目运算符!是布尔非。双目运算符&,|和是逻辑AND,OR和XOR运算符,它们强制两个操作数求布尔值。为避免右侧操作数冗余求值,用户可以使用短路求值运算符&和|。用户可以使用=和!=,赋值运算符也可以用&=、|=、=。三元条件操作符?:和C语言中的一样。浮点运算符浮点运算符可以使用常规运算符的组合:如单目运算符+、-,双目运算符+、-、*和/,以及赋值运算符+=,-=,*=,和/=。此外,还有取模运算:%和%=也可以作用于浮点数,例如:a%b和a-(int)(a/b)*b)的语义相同。这表示a%b的结果是除完后剩下的浮点数部分。只有单精度操作数的浮点表达式按照单精度运算求值,产生单精度结果。如果浮点表达式中含有一个或一个以上的双精度操作数,则按双精度运

      《二级Java复习资料 (1)》由会员ns****g分享,可在线阅读,更多相关《二级Java复习资料 (1)》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    监控施工 信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.