南京工程学院 Java 复习 整理Word下载.docx
《南京工程学院 Java 复习 整理Word下载.docx》由会员分享,可在线阅读,更多相关《南京工程学院 Java 复习 整理Word下载.docx(24页珍藏版)》请在冰豆网上搜索。
变量声明格式:
如:
inti=0,j=0;
[修饰符]数据类型变量[=表达式]{,变量[=表达式]}
声明一个变量,系统将为该变量分配内存单元,内存单元大小取决该变量的数据类型;
可在声明时对变量进行初始化;
同一作用域的标识符只能被声明一次,不能重复声明。
P29运算符与表达式:
习题1.4-1.17
P52数组的定义方法、引用模型(引用赋值)、维数表示(第一维、第二维的表示),不规则二维数组的表示(大)
定义方法:
inta[];
或int[]a;
引用赋值:
数组是引用数据类型,
inta[]={1,2,3,4,5},b[];
b=a;
//引用赋值,数组变量赋值,传递引用
b[1]=10;
//a[1]==10
b=newint[4];
//b重新申请数组空间,a==b为false
b=null;
//释放数组占用的存储空间
二维数组:
intmat[][]=newint[2][3];
//声明和申请存储空间
intmat[][]={{1,2,3},{4,5,6}};
//声明时赋初值
不规则二维数组:
intmat[][];
mat=newint[2][];
//申请第一维存储空间
mat[0]=newint[2];
//申请第二维存储空间
mat[1]=newint[3];
P62string类型数据的定义形式,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([参数列表])
P75java类与成员的访问权限
2种访问控制权限:
公有和缺省
(1)private声明私有成员,仅能被当前类的成员访问
(2)没有修饰符表示缺省权限,说明该成员能被当前类以及当前包中的其他类访问,也称在当前包中可见。
(3)protected声明保护成员,该成员能被当前类及其子类、或当前包中的其他类访问,也称在子类中可见。
(4)public声明公有成员,可被所有类访问。
权限修饰符
当前类
当前包
其他包的子类
所有类
private(私有)
√
缺省
protected(保护)
public(公有)
P76static的用途(可以修饰什么、不可修饰什么不能申明方法的局部变量为static)
静态成员属于类,即使没有创建实例,也可以通过类名直接访问静态成员变量和调用静态成员方法。
在类内部,可直接访问静态成员,省略类名,静态成员也可以通过对象引用。
在静态成员方法体中,不能访问实例成员,不能使用this引用。
在Java中,不能声明方法的局部变量为static。
在声明时,可对静态成员变量赋初值,也可使用static声明静态初始化块,对静态成员变量进行初始化,格式如下,其中只能访问类中的静态成员,且不能引发检测性异常,并在类加载时执行。
static//静态初始化块
{静态成员变量初始化;
}
P87子类对父类成员的访问权限问题
(1)不能访问父类的私有成员(private)
(2)能访问父类的公有成员(public)和保护成员(protected)
(3)子类对父类的缺省权限成员的访问控制,以包为界分为两种情况:
可以访问当前包中父类的缺省权限成员,不能访问其他包中父类的缺省权限成员。
P87super()的用途用法(大)
调用父类的构造方法。
super([参数列表])
在以下两种情况下,Java默认执行super(),调用父类的构造方法。
(1)当一个类没有声明构造方法时,Java为该类提供默认构造方法,调用super()执行父类无参数的构造方法。
(2)如果子类的构造方法没有调用super()或this(),Java将默认执行super()
P93父类对象引用子类实例问题
子类对象即是父类对象,表现为父类与子类之间具有赋值相容性,即父类对象能够引用子类实例,反之不行。
Personp=newStudent();
//赋值相容,子类对象即是父类对象
Students=newPerson();
//语法错,赋值不相容,父类对象不是子类对象
再扩展到Object类,由于所有类都是Object的子类,所以一个Object对象能够引用任何类的实例。
Objectobj=newPerson();
即是性质也表现在方法调用的参数传递过程中。
P93-94编译时多态和运行时多态(大)
P94-95多态的equals()方法、equals方法的定义
声明如下,比较两个对象是否相等。
P98abstract的用途
声明抽象类与抽象方法。
抽象类用于描述抽象概念,其中声明的抽象方法为多个子类约定方法声明,每个子类根据自身的实际情况,给出抽象方法的具体实现,显然不同的子类可以有不同的方法实现。
因此,一个抽象方法在多个子类中表现出多态性。
抽象方法提供方法声明与方法实现的分离机制,使抽象类的多个子类能够实现出共同的行为能力。
P101final的用途
声明最终类,最终方法。
最终类不能被继承;
最终方法不能被子类覆盖。
最终类中包含的都是最终方法,非最终类也可以包含最终方法。
第四章
习题册P45-46:
1.1、1.2;
P46:
1.1、1.4、1.5
P106接口的定义形式、接口的基本性质、继承规则
用关键字implements声明一个类将实现指定接口,格式:
[修饰符]class类<
泛型>
[extends父类][implements接口列表]
一个类可以实现多个接口,实现接口的非抽象类必须实现(覆盖)所有指定接口中的所有抽象方法,方法的参数列表必须相同;
否则,该类型必须声明为抽象类。
一个接口可以有多个父接口。
P115java默认包、Object类为java中所有类的父类、且在lang包中
P116Comparable接口的定义、功能,CompareTo()方法的功能(大)
Comparable接口声明一个比较两个对象大小的compareTo()方法,声明如下:
publicinterfaceComparable<
T>
{intcompareTo(Tobj)}
MyDate类也可将compareTo(d)方法实现为返回两个日期相距的天数。
只要实现Comparable接口的类的两个对象才能比较大小。
P121获得当前日期的年份、月份
thisYear=Calendar.getInstance().get(Calendar.YEAR);
//获得当前日期对象中的年份值
第五章
P52:
2.1、2.2、
P128为何异常处理、如何异常处理,能解决哪些问题,不能解决哪些问题(大)
P132try{}catch(){}finally{}语句的应用(大)
用来捕获和处理一个或多个异常。
catch语句可以有多个,finally子句可省略。
try子句包括可能产生异常的语句序列;
catch子句用于捕获并处理。
两者都将执行finally子句。
第六章
P146几种容器默认布局管理器
FlowLayout流布局管理器:
从左至右排序、一行一行排列;
BorderLayout边布局管理器:
划分为5个区域(东南西北和中间);
GridLayout网格布局管理器:
从左到右、从上到下;
如果组件数多于网格数,将自动增加网格。
P150Windowlisrener的用途用法
注册和取消窗口事件:
add/removeWindowListener
P165JoptionPane的用途用法、确认对话框各按钮的返回值
定制多钟形式的标准对话框,如消息、确认和输入等。
“是”返回0,“否”返回1,“取消”返回2。
P179绘制图形用的方法:
paint()
paint()方法和普通方法不同,太是由系统自动执行。
当创建一个组件对象时,系统自动执行该组件的paint()方法,绘制特定图形。
因为,一个类如果需要在组件上绘图,则该类必须声明为继承某个Java组件类,并且覆盖paint()方法,否则系统不能自动执行paint()方法。
第七章
P67-68:
1.1、1.2、1.7
P191thread和runnable的定义、用法,run()和start()方法的用途与含义
P197多线程实现动画:
例7.3run()、start()、sleep()(大);
定时器实现动画:
启动定时启动方法、响应定时器方法、定时器停止方法(大)
P200线程对象的优先级设置方法、获得方法及优先级范围
publicfinalintgetPriority()//获得线程优先级
publicfinalvoidsetPriority(intnewPriority)//设置线程优先级
10个等级的线程优先级,分别用1~10表示,最低为1,默认为5。
P204多线程同步问题,何为交互线程,何为线程互斥与同步,如何使用线程互斥与同步机制怎样保证交互线程对共享变量操作的正确性,不产生与时间有关的错误。
多线程共享变量时会发生什么问题,何时采用线程同步,怎么保证对共享变量的访问正确性,同步使用的关键字(大)
P214java的线程通信方法,功能是啥,用于什么地方(大)
publicfinalvoidwait()throwsInterruptedException//等待
publicfinalnativevoidwait(longtimeout)throwsInterruptedException;
//等待指定时间
publicfinalnativevoidnotify();
//唤醒一个等待线程
publicfinalnativevoidnotifyAll();
//唤醒所有等待线程
这些方法可以被任意类的对象调用,并申明为最终方法,不能被子类覆盖。
一个对象调用wait()方法使当前执行线程变为等待状态,直到其他线程调用notify()或notifyAll()方法通知当前线程才停止等待,该线程被唤醒。
第八章
P227applet例8.1,applet的运行方式:
嵌入浏览器
嵌入Applet的Web页存储在远程Web处理器上,当用户在客户机上通过浏览器请求查看一个Web页时,Web服务器将该网页的超文本文档下载到本地计算机,超文本由浏览器解释执行,而嵌入在超文本中的Applet由浏览器中的Java解释器解释执行。
So,Applet是由客户端浏览器解释执行的Web应用程序。
第九章
P239流的含义和用途,使用的场合,Java的两大类流,举例说明。
流与文件操作的关系,文件属性使用的类。
(大)
流指数据传输。
在面向过程的程序设计语言中,只要标准输入输出和文件读写操作中存在数据传输,而标准输入输出是文件操作和特例。
字节流:
以字节为基本单位读取。
字节输入流InputStream类及其子类。
字符流:
本质上是字节流,以字符方式读取字节流。
字符输入流是Reader类及其子类。
与文件操作的关系:
Java提供文件流实现读写文件数据操作。
File类。
P242标准输入输出常量属于什么类
java.lang.System类中有3个常量in、out、err。
System.in是InputStream类的常量对象,调用read()方法可以从键盘接收数据;
System.out是PrintStream类的常量对象,调用print()和println()方法向显示器输出数据。
System.err是PrintStream类的对象,实现标准错误输出功能。
P248例9.3使用数据流读写整数文件(大)
P249对象字节输入输出流类
对记录式文件进行读写操作,以对象为单位读取或写入一个对象。
ObjectInputStream类:
声明读取一个对象的readObject()方法;
ObjectOutputStream类:
写入一个对象的writeObject()方法。
java.io.Serializable序列化接口是标记接口,其中没有方法。
对象序列化就是把一个对象转化成字节流。
只有声明实现java.io.Serializable序列化接口的类,其对象才能通过字节流进行读写操作。
P264文件对话框组件
执行打开文件操作时,需要选择路径和文件;
当执行保存文件操作时,需要设置文件名并选择文件路径。
这两种选择文件路径的功能已由Windows封装成了打开文件对话框和保存文件对话框。
javax.swing.JFileChooser选择文件对话框。
JFileChooser使用的文件过滤器是javax.swing.filechooser.FileFilter。
第十章(这一章不好找,Don’ttrustme~!
)
P289实现TCP通信需要的类
Java提供ServerSocket和Socket类实现TCPSocket通信。
ServerSocket类提供TCP连接服务,Socket类提供进行通信的Socket对象。
P289何为Socket,TCPSocket通信特点,TCPSocket和UDPSocket通信的区别,为何实现TCPSocket通信时要采用流,使用什么流,能够传输什么类型数据,如何实现?
网络上的两个程序通过一个双向的通讯连接实现数据的交换,这个双向链路的一端称为一个Socket。
Socket通常用来实现客户方和服务方的连接。
Socket是TCP/IP协议的一个十分流行的编程界面,一个Socket由一个IP地址和一个端口号唯一确定。
但是,Socket所支持的协议种类也不光TCP/IP一种,因此两者之间是没有必然联系的。
在Java环境下,Socket编程主要是指基于TCP/IP协议的网络编程。
P290客户端如何向服务器端发出链接请求,服务器端使用什么方法等待客户端的连接请求,TCPsocket所在的包
accept()方法等待;
包。
P300UDP通信的数据报类和数据报套接字类
DatagramPacket和DatagramSocket类。
P304UDP组播数据报需要的类
MulticastSocket组播套接字类,是DatagramSocket的子类。
getClass()getSuperClass()getPackage()getName()方法的用途//这个真心没整理
————————————若你看到这句话,你已经86分了——————————————
编程题(界面题),包括:
框架、面板、文本框、文本区、复选按钮、标签,参考例6.4