欢迎来到天天文库
浏览记录
ID:5338478
大小:193.95 KB
页数:9页
时间:2017-12-08
《面向对象程序设计(java) 复习提纲》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Java复习提纲1.基础知识1)Java源代码文件后缀名为.java,编译后生成的字节码文件后缀名为.class2)Java中的变量名由三种类型的字符:字母、数字和下划线组成,且数字不能作为变量名首字母。3)Java中的变量名一般首字母小写,类名首字母大写,包名首字母小写。4)一个Java源文件中可以定义多个类,但只能有一个是public的。5)JDK安装后,会有两个可执行程序文件java.exe、javac.exe,其中java.exe是用来运行Java程序的,javac.exe是用来编译Java源代码的。6)Java程序中,要结束程序退出,并且设置结果状态为-1,应该调用Sy
2、stem.exit(-1);如果没有调用这个函数,那么程序最终退出时,退出值为0。7)abstract类中可以有abstract和普通(非abstract)的方法;普通类中则只能有普通方法,不能有abstract方法。8)int[]a=null;a[0]=77;会引起NullPointerException。9)Strings=(String)newObject();会引起ClassCastException。『父类不能强制转换成之类』10)Java中Object类是最顶层的类,是所有类的父类(也叫超类)。11)使用instanceof运算符可以判断一个对象是否是某个类。2.名词
3、解释1)JVM『Java虚拟机简称JVM,是运行所有Java程序的抽象计算机,包含Java解释器。JVM实现了Java程序的跨平台运行。』2)JRE和JDK『Java运行时环境简称JRE,Java开发工具的一个子集。由想要重新分布JRE的终端用户和开发者使用。JRE包括Java虚拟机、Java核心类及支持文件。Java开发工具集简称JDK,用Java编写applet和应用程序的软件开发环境。它比JRE多了开发工具和API。』3)JavaSE、JavaEE和JavaME『Java平台标准版简称JavaSE,用于开发和部署桌面、服务器及嵌入式设备和实施环境中的Java应用程序。Jav
4、aSE为JavaEE提供了基础。JavaEE是一种利用Java2平台来简化企业解决方案的开发、部署和管理相关的复杂问题的体系结构。Java微版的简称JavaME,是一个技术和规范的集合,它为移动设备提供了基于Java环境的开发与应用平台。』4)IDE『集成开发环境简称IDE,一个能融合编译器、除错器、文字编辑器等各类开发软件的工具为一体的工具软件,通常有良好的图形操作界面,如Eclipse。』5)JLS『Java编程规范简称JLS,JLS提供了一整套编写高效可靠的Java代码的标准、约定和指南。』3.编程题1)生成[10,100)范围内的随机double浮点数,包括10不包括10
5、0。2)生成[10,100)范围内的随机整数,包括10不包括100。3)写一个计算阶乘的递归函数。4)写一个寻找数组最大值的递归函数。5)设计一个表示虚数的类,需要实现其中的构造函数、toString、euqals、hashCode这4个函数,并实现Comparable接口(按模比较大小)。『重写equals方法必须重写hashcode方法,若a.equals(b),这a和b的hashcode相等。』4.问答题1)Java程序运行在JVM上。这样做有哪些好处?『JVM屏蔽了与具体平台相关的信息,实现了Java语言的平台无关性;JVM实现了垃圾回收机制,无需手动释放内存。』2)你认
6、为Java是一个解释型的语言还是编译型的语言?『Java是解释型的语言,因为Java并不像C语言那样可以将源代码直接编译成操作系统可以识别的二进制文件。Java是通过将class文件中的字节码逐行解释为具体的机器指令而运行程序的。』3)虚拟机是一个广泛的概念,任何一个解释型的编程语言,任何一个编译型的编程语言,甚至任何一台现代的计算机,都可以类比成虚拟机。你同意这种说法吗?说明你的理由。『广义的虚拟机是指,针对程序模拟出一台机器,让程序不用考虑硬件等运行环境。显然不管是解释型语言、编译型语言都屏蔽了程序对硬件的直接访问,而是通过操作系统或者虚拟机来间接访问硬件;同样,操作系统通过
7、提供系统函数供外部程序访问硬件。所以不管解释型语言、编译型语言还是计算机都可以类比成广义的虚拟机。』4)Java中没有指针,这样做有哪些好处?『Java没有指针,所以地址操作更加安全。』5)Java中的Hotspot技术是什么?Java能比C语言运行得更快吗?『Javahotspot技术是一组技术的总称。主要包括:动态编译、方法内置、改进和重新设计布局、快速且完全精确的垃圾回收和超快速线程同步。一般来说C确实比Java运行要快,但是也得具体分析,Java虚拟机通过这么多年的优化,
此文档下载收益归作者所有