南京工程学院 Java 复习 整理
- 格式:doc
- 大小:52.93 MB
- 文档页数:24
Java总复习第1章Java入门1.2 Java的特点: 简单.面向对象.与平台无关.多线程.安全.动态1.3 安装Sun公司的SDK :J2SE J2EE(java ee5): J2ME path classpath设置1.4 一个Java程序的开发过程:java javac1.5 一个简单的Java应用程序的开发过程:源文件命名:源文件中有多个类,那么只能有一个类是public类。
如果有一个类是public类,那么源文件的名字必须与这个类的名字完全相同,扩展名是.java。
如果源文件没有public类,那么源文件的名字只要和某个类的名字相同,并且扩展名是.java就可以了1.6 一个简单的Java小应用程序public class Boy extends Applet<applet code=Boy.class height=100 width=300></applet>第2章标识符、关键字和数据类型2.1 标识符和关键字:标识符由字母、下划线、美元符号和数字组成,并且第一个字符不能是数字字符。
2.2 Java的基本数据类型:boolean、byte 、short、int、long、float、double、char及类型转换2.3 Java的数组: 引用类型int a[]={100,200,300};int a[]=new int [10] 对象数组第3章运算符、表达式和语句3.1 运算符与表达式1/2 , &&, ||3.2 语句概述3.3 控制语句Switch(整形表达式){ case 整形常量1: break;Default :}3.4 循环语句3.5 break和continue语句: 后面可以带标号第4章类、对象和接口4.1 编程语言的几个发展阶段4.1.1 机器语言4.1.2 过程语言4.1.3 面向对象编程=对象+类+继承+消息传递:特点:抽象封装继承多态4.2 类命名规则:包、类、变量、方法等命名:要体现各自的含义。
JAVA知识点复习大全JAVA知识点复习大全int 和Integer 有什么区别Java 提供两种不同的类型:引用类型和原始类型(或内置类型)。
Int是java的原始数据类型,Integer是java为int提供的封装类。
Java为每个原始类型提供了封装类。
原始类型封装类boolean Booleanchar Characterbyte Byteshort Shortint Integerlong Longfloat Floatdouble Double引用类型和原始类型的行为完全不同,并且它们具有不同的语义。
引用类型和原始类型具有不同的特征和用法,它们包括:大小和速度问题,这种类型以哪种类型的数据结构存储,当引用类型和原始类型用作某个类的实例数据时所指定的缺省值。
对象引用实例变量的缺省值为null,而原始类型实例变量的缺省值与它们的类型有关。
String 和StringBuffer的区别JA V A平台提供了两个类:String和StringBuffer,它们可以储存和操作字符串,即包含多个字符的字符数据。
这个String类提供了数值不可改变的字符串。
而这个StringBuffer类提供的字符串进行修改。
当你知道字符数据要改变的时候你就可以使用StringBuffer。
典型地,你可以使用StringBuffers来动态构造字符数据。
运行时异常与一般异常有何异同?异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。
java编译器要求方法必须声明抛出可能发生的非运行时异常,但是并不要求必须声明抛出未被捕获的运行时异常。
说出Servlet的生命周期,并说出Servlet和CGI的区别。
Servlet被服务器实例化后,容器运行其init方法,请求到达时运行其service方法,service方法自动派遣运行与请求对应的doXXX方法(doGet,doPost)等,当服务器决定将实例销毁的时候调用其destroy方法。
Java复习资料一、知识点(1)Java支持分布式计算(2)Java是跨平台的编程语言(3)Java支持多线程(4)内存回收程序负责释放无用内存(5)main()方法的返回类型是void(6)子类能继承父类的所有方法和状态(7)若需要定义一个类域或类方法,应使用的修饰符是static(8)如要抛出异常,应使用的子句是throw(9)流使用结束后,关闭流并释放资源,使用close()方法。
(10)Java语言的各种数据类型之间提供两种转换:自动转换和强制转换。
(11)Java语言中,调用方法时,参数传递是值调用,而不是地址调用。
(12)面向对象的语言将客观世界都看成由各种对象组成,共同特征和行为的对象组成类,类是变量和方法的集合体。
(13)在Java程序中,要实现多重继承需要使用接口。
(14)在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占用2字节内存空间。
(15)计算机中的流是流动的数据缓冲区(16)RandomaccessFile是java.io包中的一个兼有输入输出功能的类。
(17)开发与运行Java程序需要经过的三个主要步骤为编辑源程序、编译生成字节码和解释执行字节码。
(18)如果一个Java Applet源程序文件只定义有一个类,该类的类名为MyApplet,则类MyApplet必须是Applet类的子类。
(19)抽象方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。
Final方法是不能被当前类的子类重新定义的方法。
(20)在Java语言中,package语句必须出现在程序文件的首行。
(21)在Java语言中,位异或的运算符为^。
(22)Java语言提供两个用于处理字符串的类:String类用于处理不可改变的字符串,而StringBuffer类用户处理可改变的字符串。
(23)Date类位于Java语言的java.util包中。
Java复习提纲Java 复习提纲⼀.复习注意点结合课本(包括课后题)、课件、上机作业题和历届试题,不仅掌握基础的理论知识,⽽且需要强化编程能⼒。
前六章的知识点⽐较杂,考核题型为客观题和简答题。
后⾯⼏章的(IO流、多线程、集合、⽹络)考核题型为程序填空和编程题。
考试占成绩70%,平时作业占30%。
5⽉24⽇是实习最后提交时间,以后不再延期。
题⽬难度适中,祝同学们取得好成绩,友情提⽰:题⽬不要空着,加油。
⼆.考试题型⼀、单选题⼆、填空题三、简答题四、程序填空题五、编程题(复习要点简介)按照章节组织顺序,列出以下复习要点:第⼀章Java语⾔概述1.2 节1、Java的六个特点2、Java的平台⽆关性原理,为什么可以“⼀次编写,到处运⾏”?3、理解JDK、JRE的概念和作⽤1.4节1、Java程序的开发步骤2、编译器javac.exe和解释器java.exe的作⽤3、源⽂件和字节码⽂件的后缀名1.5节1、区分主类和public类,同⼀个源⽂件中的public类命名规则?(1.5.1)2、掌握在当前⽬录下编译、运⾏例1.1的过程(1.5.2,1.5.3)第⼆章基本类型2.1节1、标识符的概念,能区分合法的标识符2.2节1、4⼤基本数据类型及具体分组(8种)2、逻辑类型常量有哪些?3、4种整数类型各⾃所占字节个数,及它们的取值范围4、字符类型常量的声明,常见转义字符及其如何使⽤在字符串中,字符类型的表⽰范围及其与int类型的显⽰转换(例2.1)5、浮点类型(float和double)常量与变量的声明规则,注意后缀“f/F”、“d/D/缺省”的使⽤6、基本数据类型中⾼精度向低精度的强制转换,原因与实现?2.4节1、数组是第⼀个介绍的引⽤类型数据,需要通过new语句完成数组的创建。
所谓的“引⽤”指的就是栈内存中变量被赋值的地址,该地址是数组或对象在堆内存中的地址。
结合以下代码理解数组的内存模型:int [] a = {1,2,3,4,5}; // ⼀维数组的直接初始化int [] c = new int[3]; // ⼀维数组的默认初始化,每个元素(int)的默认值是0// ⼆维数组的内存分配机制,上课的时候讲的有点错误,在此向同学们道歉。
JA V A 复习复习第一讲第一讲 Java 概述概述一、Java 虚拟机虚拟机 (1) Java 字节码解释程序称为Java 虚拟机(Java V irtual Machine ,JVM)。
在其标准形式下,JVM 就是一个字节码解释器。
就是一个字节码解释器。
(2) 只要在一个操作系统上有相应的Java 字节码解释程序,Java 字节码文件就能在这个操作系统上被解释执行。
(Java 跨平台的根本原因)跨平台的根本原因)二、Java 的编译和运行环境的编译和运行环境javac.exe 将java 源程序编译成java 字节码文件的java 编译工具。
编译工具。
java.exe 用于在windows 操作系统上对java 字节码文件进行解释执行的程序,也就是java 虚拟机(JVM)。
第三讲和第五讲第三讲和第五讲 面向对象程序设计思想面向对象程序设计思想一、类的声明形式:一、类的声明形式:[特征修饰符] [访问控制修饰符] class 类名称[extends 基类] { [属性] [方法] } 二、对象(实例):类的实例化:类的实例化对象在建立时分配了内存,创建对象实际上作了两个方面的工作:对象在建立时分配了内存,创建对象实际上作了两个方面的工作:(1)使用new 关键字分配内存;关键字分配内存;(2)使用构造方法初始化数据(构造方法是与类名同名的方法)。
三、JA V A 将类中的属性和方法分为两类将类中的属性和方法分为两类实例成员实例成员 为每个对象独自存储,互不干扰的属性和方法。
为每个对象独自存储,互不干扰的属性和方法。
静态成员静态成员 为该类所有对象所共享,包括静态属性和静态方法。
为该类所有对象所共享,包括静态属性和静态方法。
在实例方法中,在实例方法中,既可以访问实例成员,既可以访问实例成员,既可以访问实例成员,也可以访问静态成员;也可以访问静态成员;也可以访问静态成员;在静态方法中只能访问静在静态方法中只能访问静态成员,而不能访问实例成员。
JAVA知识点复习JAVA知识点复习int 和 Integer 有什么区别Java 提供两种不同的类型:引⽤类型和原始类型(或内置类型)。Int是java的原始数据类型,Integer 是java为int提供的封装类。Java为每个原始类型提供了封装类。
原始类型封装类boolean Booleanchar Characterbyte Byteshort Shortint Integerlong Longfloat Floatdouble Double引⽤类型和原始类型的⾏为完全不同,并且它们具有不同的语义。引⽤类型和原始类型具有不同的特征和⽤法,它们包括:⼤⼩和速度问题,这种类型以哪种类型的数据结构存储,当引⽤类型和原始类型⽤作某个类的实例数据时所指定的缺省值。对象引⽤实例变量的缺省值为 null,⽽原始类型实例变量的缺省值与它们的类型有关。
String 和StringBuffer的区别JAVA平台提供了两个类:String和StringBuffer,它们可以储存和操作字符串,即包含多个字符的字符数据。这个String类提供了数值不可改变的字符串。⽽这个StringBuffer 类提供的字符串进⾏修改。当你知道字符数据要改变的时候你就可以使⽤StringBuffer。典型地,你可以使⽤StringBuffers来动态构造字符数据。
运⾏时异常与⼀般异常有何异同?异常表⽰程序运⾏过程中可能出现的⾮正常状态,运⾏时异常表⽰虚拟机的通常操作中可能遇到的异常,是⼀种常见运⾏错误。
java编译器要求⽅法必须声明抛出可能发⽣的⾮运⾏时异常,但是并不要求必须声明抛出未被捕获的运⾏时异常。说出Servlet的⽣命周期,并说出Servlet和CGI的区别。Servlet被服务器实例化后,容器运⾏其init⽅法,请求到达时运⾏其service⽅法,service⽅法⾃动派遣运⾏与请求对应的doXXX⽅法(doGet,doPost)等,当服务器决定将实例销毁的时候调⽤其destroy⽅法。
考试题型:填空题(30分),单选题(2*8),问答题(5*4),程序阅读,改错题(5*4),编程题(14) 第一章 P5 JAVA文件的命名方式 由一个或多个扩展名为“.java”的文件组成。
P8编译和运行java程序的流程
第二章 习题册P5-P8习题1.4-1.17;P9-10:1.22、1.23、1.24;P15:1.2、1.3 P24 标识符的命名规则 以字母开头的字母数字序列。 (1) 数字0~9,大小写英文字母,下划线,美元符($),也可以是Unicode字符集中的字符,如汉字等 (2) 字母、数字等任意组合,不能包含其他字符。例如:不能有+、-等。 (3) 区分字母大小写 (4) 不能使用关键字 (5) 长度不受限制 例如:abc、i、x1、x_2、sum都是标识符,1x、x+y、R[1]、k*不是,而VALUE、Value、value是不同的标识符。 Java语言约定,关键字、变量、对象、方法、包等名字通常全部字母小写;由多个单词构成的标识符,首字母小写,其后单词首字母大写,如toString;类名首字母大写;常量名全部字母大写。
P28变量的申明,各种类型数据的表示范围 变量声明格式:如:int i = 0 , j = 0; [修饰符] 数据类型 变量 [=表达式]{,变量[=表达式]} 声明一个变量,系统将为该变量分配内存单元,内存单元大小取决该变量的数据类型;可在声明时对变量进行初始化;同一作用域的标识符只能被声明一次,不能重复声明。
P29 运算符与表达式:习题1.4-1.17 P52数组的定义方法、引用模型(引用赋值)、维数表示(第一维、第二维的表示),不规则二维数组的表示(大) 定义方法: int a[]; 或 int[] a; 引用赋值:数组是引用数据类型, 例如: int a[]={1,2,3,4,5},b[]; b=a; //引用赋值,数组变量赋值,传递引用 b[1]=10; //a[1]==10 b=new int[4]; //b重新申请数组空间,a==b为false b=null; //释放数组占用的存储空间 二维数组: int mat[][] = new int [2][3]; //声明和申请存储空间 int mat[][] = {{1,2,3},{4,5,6}}; //声明时赋初值 不规则二维数组: int mat[][]; mat = new int [2][]; //申请第一维存储空间 mat[0] = new int [2]; //申请第二维存储空间 mat[1] = new int [3];
P62 string类型数据的定义形式,string类常用方法表2-9(charAt,substring) 第三章 习题册:P31-32:2.5、2.8、2.9,P34-35:1.3、1.4、1.7、1.8;P36:1.12、1.13、1.16、1.17、1.18 P73类的构造方法的定义的形式,main()方法的申明形式 构造方法用于创建类的一个实例并对实例的成员变量进行初始化。构造方法与类中成员方法不同之处是:构造方法与类同名;构造方法通过new运算符调用。 默认构造方法:当一个类没声明构造方法时,Java自动为该类提供一个无参数的默认构造方法,对各成员变量按其数据类型进行初始化。 一个类需要声明默认构造方法为成员赋默认值。
P74this功能,三大用途(大) (1) 指代对象本身。用于指代调用成员方法的当前对象自身。格式: this (2) 访问本类的成员变量和成员方法。引用当前对象的成员变量,调用当前对象的成员方法。 this.成员变量 this.成员方法([参数列表]) (3) 调用本类重载的构造方法。 this([参数列表])
P75 java类与成员的访问权限 2种访问控制权限:公有和缺省 (1) private声明私有成员,仅能被当前类的成员访问 (2) 没有修饰符表示缺省权限,说明该成员能被当前类以及当前包中的其他类访问,也称在当前包中可见。 (3) protected声明保护成员,该成员能被当前类及其子类、或当前包中的其他类访问,也称在子类中可见。 (4) public声明公有成员,可被所有类访问。 权限修饰符 当前类 当前包 其他包的子类 所有类 private(私有) √ 缺省 √ √ protected(保护) √ √ √ public(公有) √ √ √ √
P76 static的用途(可以修饰什么、不可修饰什么不能申明方法的局部变量为static) 静态成员属于类,即使没有创建实例,也可以通过类名直接访问静态成员变量和调用静态成员方法。 在类内部,可直接访问静态成员,省略类名,静态成员也可以通过对象引用。在静态成员方法体中,不能访问实例成员,不能使用this引用。在Java中,不能声明方法的局部变量为static。 在声明时,可对静态成员变量赋初值,也可使用static声明静态初始化块,对静态成员变量进行初始化,格式如下,其中只能访问类中的静态成员,且不能引发检测性异常,并在类加载时执行。 static //静态初始化块 { 静态成员变量初始化; }
P87 子类对父类成员的访问权限问题 (1) 不能访问父类的私有成员(private) (2) 能访问父类的公有成员(public)和保护成员(protected) (3) 子类对父类的缺省权限成员的访问控制,以包为界分为两种情况:可以访问当前包中父类的缺省权限成员,不能访问其他包中父类的缺省权限成员。
P87 super()的用途用法(大) 调用父类的构造方法。格式: super([参数列表]) 在以下两种情况下,Java默认执行super(),调用父类的构造方法。 (1) 当一个类没有声明构造方法时,Java为该类提供默认构造方法,调用super()执行父类无参数的构造方法。 (2) 如果子类的构造方法没有调用super()或this(),Java将默认执行super()
P93 父类对象引用子类实例问题 子类对象即是父类对象,表现为父类与子类之间具有赋值相容性,即父类对象能够引用子类实例,反之不行。例如: Person p = new Student(); //赋值相容,子类对象即是父类对象 Student s = new Person(); //语法错,赋值不相容,父类对象不是子类对象 再扩展到Object类,由于所有类都是Object的子类,所以一个Object对象能够引用任何类的实例。例如: Object obj = new Person(); //赋值相容,子类对象即是父类对象 即是性质也表现在方法调用的参数传递过程中。
P93-94 编译时多态和运行时多态(大) P94-95多态的equals()方法、equals方法的定义
声明如下,比较两个对象是否相等。 P98 abstract的用途 声明抽象类与抽象方法。抽象类用于描述抽象概念,其中声明的抽象方法为多个子类约定方法声明,每个子类根据自身的实际情况,给出抽象方法的具体实现,显然不同的子类可以有不同的方法实现。因此,一个抽象方法在多个子类中表现出多态性。抽象方法提供方法声明与方法实现的分离机制,使抽象类的多个子类能够实现出共同的行为能力。 P101 final的用途 声明最终类,最终方法。最终类不能被继承;最终方法不能被子类覆盖。 最终类中包含的都是最终方法,非最终类也可以包含最终方法。
第四章 习题册P45-46:1.1、1.2;P46:1.1、1.4、1.5
P106 接口的定义形式、接口的基本性质、继承规则 用关键字implements声明一个类将实现指定接口,格式: [修饰符] class 类 [extends 父类] [implements 接口列表] 一个类可以实现多个接口,实现接口的非抽象类必须实现(覆盖)所有指定接口中的所有抽象方法,方法的参数列表必须相同;否则,该类型必须声明为抽象类。 一个接口可以有多个父接口。
P115 java默认包、Object类为java中所有类的父类、且在lang包中
P116 Comparable接口的定义、功能,CompareTo()方法的功能(大) Comparable接口声明一个比较两个对象大小的compareTo()方法,声明如下: public interface Comparable { int compareTo(T obj) } MyDate类也可将compareTo(d)方法实现为返回两个日期相距的天数。 只要实现Comparable接口的类的两个对象才能比较大小。
P121 获得当前日期的年份、月份 thisYear = Calendar.getInstance().get(Calendar.YEAR); //获得当前日期对象中的年份值 第五章 习题册:P52:2.1、2.2、
P128 为何异常处理、如何异常处理,能解决哪些问题,不能解决哪些问题(大)
P132 try{}catch(){}finally{}语句的应用(大) 用来捕获和处理一个或多个异常。catch语句可以有多个,finally子句可省略。 try子句包括可能产生异常的语句序列;catch子句用于捕获并处理。两者都将执行finally子句。
第六章 P146 几种容器默认布局管理器 FlowLayout流布局管理器:从左至右排序、一行一行排列; BorderLayout边布局管理器:划分为5个区域(东南西北和中间); GridLayout网格布局管理器:从左到右、从上到下;如果组件数多于网格数,将自动增加网格。
P150 Windowlisrener的用途用法 注册和取消窗口事件:add / removeWindowListener
P165 JoptionPane的用途用法、确认对话框各按钮的返回值 定制多钟形式的标准对话框,如消息、确认和输入等。 “是”返回0,“否”返回1,“取消”返回2 。
P179 绘制图形用的方法:paint() paint()方法和普通方法不同,太是由系统自动执行。当创建一个组件对象时,系统自动执行该组件的paint()方法,绘制特定图形。因为,一个类如果需要在组件上绘图,则该类必须声明为继承某个Java组件类,并且覆盖paint()方法,否则系统不能自动执行paint()方法。
第七章 习题册:P67-68:1.1、1.2、1.7
P191 thread 和runnable的定义、用法,run()和start()方法的用途与含义