您好,欢迎来到花图问答。
搜索
您的当前位置:首页java复习各章重点内容.docx

java复习各章重点内容.docx

来源:花图问答


第一章Java概述

1. Java如何实现跨平台?

通过Java虚拟机JVM来实现跨平台,先将Java源程序编译成字节码(后缀为.class的代 码),字节码可以在Java虚拟机上运行,不同的平台有不同的Java虚拟机JVM,相同的 字节码可以不同的平台上运行。

2. Java开发的三个平台是什么?

J2SE、J2EE 和 J2ME 3. 如何编译与运行java程序?

在Dos命令提示符状态下通过命令行来实现的。例如:

test, java

► test.class

Output

javac java

如果用命令行运行test的话,后面不可以写class”, 若写成test, class系统会把class当成类名,test当成类包, 所以在没冇类包的情况下不要写成“.class”形式。

第二章Java基础

1. 什么是标识符?如何定义标识符?

标识符是用來标识变量、常量、方法、类、对象等元素的有效字符序列。Java语言规定标 识符由字母、下划线、美元符号和数字等组成,并且第一个字符不能是数字。

对标识符的约定:(1)变量名、对彖名、方法名、报名等标识符全部采用小写字母;如果 标识符由多个单词构成,则首字母小写,具后单词的首字母大写,具余字母小写,如get Age o (2) 类名首字母大写。(3)常量名全部字母大写。

2. 关键字的定义?

关键字是由Java语言定义的、具有特殊含义的字符序列。其首字母不能大写。如:this, super, extends, if, class, instanceof 3.Java中数据类型的结构?

厂字符(char)

(基木数据类型

字节(byte)

定点类型 v短整数(short)

整数(ini)

数值类型V

9长整数(long) '单精度浮点

数(float)

k浮点类型

-双精度浮点数(double)

\\引用数据类型

接口

布尔(boolean)

float与double定义时的区别:float型的数要在后面要加f,如34.5f

4. 常量与变量的声明方式?

常最:final[修饰符]类型标识符常最名=(肓接)常量 如:final public double PA1=3.14; 变量:[修饰符]类型标识符变量名匸常量]; 女口: public float x=25.4f;

常量与变量的区别:一口定义为常量了,其值不能改变,若要改变其值,只能改变声明时 的值。 5・Java的运算符和表达式? 单目运算符:++、・・、正、负。 双目运算符:+、・、*、/、% (取模) 逻辑运算符:&、I、!、八、&&、II 区别:

逻辑与:&

短路与:&&(只要一个为F, —定为F)

“// ..... ”单行注释 “严 ..... */'多行注释

逻辑或:丨

矩路或:II (只要一个为T,则一定为T) 6・关于注释的正确写法?

第三、四、五章

l・Java的三种基本控制结构?顺序,选择和循坏 if, switch, while, for, continue 与 break 区另I」

2. 数组的定义?举例定义一个基本数据类型的数组和一个引用数据类型的数组。

数组是一组同类型的数据的集合,除了基木数据类型还包括引用数据类型,那么引用 数据类型数组是如何声明、初始化和使用的。 例:基本数据类型数组的声明,初始化

intf]c=new int⑸;(5表示数纽.的单元长度是5) c[0]=-5;或 int[]c={ 1,2,3); c⑵=3; 引用数据类型数组的声明初始化 例:String[Js=new String⑶; S[0J=new String(\"ab”); 或 String[]sl={'T',“2\ 或 String[]sl= new String(tString[]s2= new String(\"2''); String[]s3= new String(\"3'');

3. 如何声明数组,初始化数组以及使用数组? 4. 如何获得数组单元的长度? int len=s.length

5. 熟练掌握一维数组的声明、初始化和操作 6. 字符串的声明与初始化?

「字符串直接量

厂常量字符串String < 字符串J L字符串常量

可变字符串 StringBuffer 、字符串

String §=“hcllo”

hello会保存在字符串值里

(3 表示有 3 个单元)

字符串直接最

String iL=new string(hello*); 在堆上开辟了一个新的对象空间來存放hello

对彖变量 String s2二“hello”;

先看字符串池里而有没有hello,若有则肓接将s2指向那个位置

String s3=new string(''hello'');

只要有new出现就一定会开辟一个新的空间。 7. 字符串直接量与字符串常量的区别:

存储位置不-•样,字符串直接量放在字符串值里,字符串常量放在堆上。 8. 常量字符串类与可变字符串类分别是什么? 9. 常量字符串的基本操作方法有哪些?

5+5+“Hello”=? I ------- 10Hello^^ “Hello”+5+5二?

与 “equals” 的区别:

比较对■象是否相等的方法是和“equals”,在采用“equals”进行比较吋不会出现问题,

比较引用变量的值,“equals”(对象:内存里整块存储的东西,对象变虽String si si即 为对象变最)比较的是对象里的内容,故比较时应该比较对象里面所包含的内容而不是对 象变量。

“Hello55”

,

第六、七、八章

1. 什么是类?类的成员组成?接口是否为类的成员?

类就是将我们白然界中的事物的属性特点和行为特点抽象封装到类当屮,反映这类事 物的特点和功能。

类的成员包括域变量和成员方法,对于域变量和成员方法都可以用static来修饰,static 修饰的域变录称为类变#:, static修饰的方法称为类方法,没有被static修饰的域变量和成 员方法称为实例变量(可以在程序中直接调用)和实例方法。

接口不是类的成员,是一种特殊的类,不用class, Hlj用interfaceo 2. 关于类的正确表述? 必须依照类的写法,如何定义

3. 什么是静态域变量和实例域变量,静态方法和实例方法?

静态域变虽称为类变虽,静态方法也称为类方法,因为它们可以通过“类名・”来调用。

4. 什么是对象?如何创建对象?什么是对象变量?如何对对象进行初始化? 对象是类的一个实例。

new在创建对■象的作用:

(1) 通过new在堆上开辟一个对彖空间,将类当中的域变量跟成员方法复制到对彖空间中; (2) 通过new来调用构造方法来初始化对象; (3) 将对象空间的首地址赋值给对象变量。

对象变量就是指对彖的首地址,通过构造方法对对彖进行初始化。 5. 什么是构造方法?构造方法的特点与作用?

构造方法:(1)在一个类中方法名与类名相同的方法;

(2) 构造方法不是通过对象来调用,而是通过new运算符来调用; (3) 构造方法是一种特殊的成员方法,它没冇返回值。

构造方法特点:可以被重载,当没有在类中定义构造方法时,系统会默认提供一个不带参 数的构

造方法。

作用:初始化对象。 6. super和this关键字的用法?

this用在当前类,当前类的一个默认的对象,可以通过this来调用当前类的属性和成 员方法,也可以直接调用当前类的构造方法的重载方法。

super用于一个类的子类中,作为父类在子类中的一个默认的对象,通过它來调用父类 的成员属性和成员方法,也町以在子类的构造方法里直接调用父类的构造方法。 7. final修饰类、变量和方法时各有什么特点? 修饰类:这个类不能够被继承。

修饰变量:这个变量值不能改变,成为一个常量。 修饰方法:这个方法不能被覆盖。

8. 面向对象编程中,java类的三个主要特征是? 三个主要特征:封装性、继承性和多态性

封装性:通过类的访问修饰符來实现封装性的public, protected,缺省,private的访问权限 继承性:extends 一个类继承了另一个类,那么父类的所有成员加性和成员方法都可以被继 承到了类当中,了类也可以创建新的成员属性和成员方法(现冇的类创建新的类 的特性)super 多态性:静态多态性,如:重载函数。

动态多态性,如:覆盖函数。

重载(overload): 一个类中可以定义多个名称相同,但参数变量不同的方法,重载方 法

与返回类空无关,重载方法常常用于构造方法,用于实现不同功能的 初始化工作,重载也称为静态多态性,这是rfl于该方法被调用时采川静 态地址充定位方式。

覆盖(override):在了类中对父类的某方法进行了重新定义,但方法的签名特征与 父亲

完全一致,访问修饰符的访问的限制宽于或至少等于父类的访问 权限;主要用于实现同一个方法在不同的类中实现不同的表现形式, 覆盖也称为动态多态性,这是由于该方法只有在运行时才能确定所调 用的地址(也是多态性)。

9. 什么是抽象类?什么是抽象方法?抽象类的特点?

在类中至少有一个方法是抽彖方法,那么这个类就称为抽彖类,用abstract来修饰抽 象类。 抽象方法即没有定义这个方法的主体,给出这个方法的签名特征。

特点:抽象类的对象变量是通过它的非抽象的了类来初始化的。

女口: Animal T=new Tiger ()里的方法都是抽象方法,修饰符为public,没有写默认为public 抽

象类

非抽象类

10. 什么是接口?接口的特点?接口的作用?

接口是使用interface关键字来代替class的特殊的类。

接口的三种形式:(1)仅有常量接口;(2)常量和抽象方法接口(3)仅有抽象方法接 口。 作用:(1)可以实现常量接口在多个类当中共享常量;(2)实现共享一组标准操作來实 现

多个类之间的共亨约定;(3)实现多态性。

11. 接口与抽象类的区别?

接口中所冇的方法都是抽象方法,不管这个方法是否使用public, abstract修饰,它都 是默认的公有的抽象方法,抽彖类至少有一个抽彖方法,而且还有一个成员方法,

接口中不能定义构造方法,抽彖类可以定义构造方法。 12. 什么是包?包的作用?

包是java语言提供的组织类和接口的工具,将一组相关的类为接口,组织到一个包中。 作用:(1)通过包可以来确定类的唯一标识;

(2)通过包可以将相似功能的类和接口组织在一个包中。

第九章

1. 什么是异常?为什么要处理异常?

异常是指程序运行过程中出现的非正常现象。

由于界常情况总是难免的,良好的应用程序除了貝备用户所要求的基本功能外,还应 该具备预见并处理可发生的各种界常的功能。 2. 异常的基本处理方式?常用的异常类有哪些?

两种处理方式:(1) 一口捕获异常马上进行处理。try, catch, finally

(2)捕获显常并不处理,而是利用方法将界常抛出,throw, throws

3. Error 和 Exception 类的区别?

Error是用來处理较少发牛•的系统内部的错i吴,程序员对这些错课通常无能为力,只能 在发生时由用户按照提示来终止程序的运行。 4. throw和throws语句的区别?

throw 是抛出—个异常对象,如:throw new XXX Exception

throws是某一个方法在声明和定义时,这个方法后面紧跟着throws,然后阐明这个方法可 能抛出异常,如:throws new XXX Exception这个异常可以是标准异常'类,也町以是 自定义的异常类。

第十章

1. Java输入输出的基本方式?

主耍是通过输入和输出流实现的,输入流将数据从文件标准输出或其他外部设备输 入,输出流将数据保存到文件或传输给相关的设备。

2. 字符流和域字节流的区别是什么?举例说明哪些类处理字符流?哪些处理字节流?如果 字节流向字符流进行转换需要用什么类?

字节流是以字节为单位的访问文件,字节流具冇两个重要的抽彖类,\"input stream和 output stream”。

字符流是以字符为单位的访问文件,两个重要的抽象类,“Reader和

Writer o

桥接类在定义字节流时,由于任何字节流的类都跟着一个stream,字符流的类示缀reader, writero 桥接类: 跟着 Inputstream reader 和 Outputstream writero 3. 为什么需要使用带有缓冲的输入输出流进行数据的读取与写入?

提高运行效率,对字符血言,为Buffer Reader,对字节而言,Buffer I叩ut stream 如:Buffer Reader new=Buffer Reader ()

v

第十一、十二章

1. javaGUI编程需要导入哪些包? .awt*,・ Swing *, . event*

2. 什么是组件?什么是容器?哪些是顶层容器?哪些是中间容器? 组件:是图形用户界面是哪个现实的各种图形基木成分和核心元素。 容器:是可以包含其他组件的组件,容器是组件的一种。

顶层容器:JFrame, JDialog, J Applet (用于布局其他容器与组件的最基本容器) 中间祥器:JPaneb JScrollpane, JTabbedpane, JToolBar

最灵活最常用的中间容器

3・什么是布局管理器?作用是什么?说出三种布局管理器及其特点。 布局管理器是用來管理各种组件容器中摆放位置的対象;

作川是将组件放遗相应的位置,使容器屮的纽•件安排更加合理,减少与系统平台的相关性; BorderLayout (边布局)类:把容器内的空间划分为东、西、南、北、屮五个区域; FlowLayout (流式布局)类:从左到右排列;

GridLayout (网格布局)类:从左到右从上到下依次放入各网格中(每个网格只能放一个组件) 4. 什么是事件? Java如何处理用户的操作?

事件:当用户用键盘或鼠标来进行操作时,操作系统发出的相应的信号。 事件源:用户在操作过程屮所使用的相关组件。 通过事件驱动模型來处理用户操作的。 5. 列出常用的时间监听器接口及其方法。

ActionListener AdjustmentListener FocusListener ItcmListcncr KeyListener MouseListener

6. Swing组件与AWT组件的区别是什么?

(1) Swing组件是AWT组件的扩展更新版木;

(2) Swing组件的平台相关性较小,称为“轻量级”组件,AWT组件相关性较大, 称为“重

量级”组件。

7. 使用java语言如何编程完成一个GUI应用?

(1) 创建基本容器,并设置相关的布局管理器; (2) 创建并配置相关的组件; (3) 将组件添加到容器中;

(4) 针对不同的组件添加(注册)相关的事件监听器,处理有组件产生的事件。 8. 适配器类与事件监听器接口的区别是什么?

actionperformed ()

adjustmentValueChange ()

focusLost () focusGained ()

itcmStatcChangc ()

keyPressed ()正按卜•那个键还没冇弹起 keyTyped ()已经按下那个键

事件监听器接口有多个抽象方法。实现事件监听器接口时,必须对所有的方法进行

覆盖,否则,会获得一个抽象类。 当继承适配器,只要在子类里所关心的抽象方法,进行覆

盖即可。

第十三、十四章

1. 什么是Applet?

Applet是可以嵌入到HTML文件中,运行的Java程序,该程序通过IE浏览器来运 彳亍的,也可以通过applet viewer运行 2. Applet运行的四种状态?

init () start () stop () destroy () 3・什么是线程?创建线程的两种方法?

进程是独立分配内存足以的基本单位,一个进程至少有一个线程, 线程是进程内部单一的一个顺序控制流,线程是CPU调用的基本单位。 方法:Thread Runnable 4. 线程的生命周期?

新建start ()»就绪运——書束

阻塞

5. 为何需要线程同步?实现线程同步的两种方法?

“关键字synchronized'多线程盂要在线程中共厚公共资源,线程Z间会并发运行, 线程需要协调工作来避免随机并发运行所带来的问题,通过使用线程同步处理,可以保 证线程协调工作。

方法:(1) synchronized void test (A) {}

------ 使用同步方法

(2) synchronized (object) {//需要同步的语彳U} -------------- 使用同步块

第十五、十六章

1. java数据库编程的四种驱动方式? (1) JDBC-ODBC桥方式 (2) (3) (4) 纯JDBC驱动方式(最有效) 2. java数据库应用的开发步骤 JDBC木地化方式 JDBC网络小间件方式 (1) (2) (3) 导入相关的类包 加载JDBC驱动程序 生成connection对象与数据库建立连接 创建SQL语句statement对象 根据SQL语句查询数据库并操作数据库 (4) (5) (6) 当数据库操作完毕需要关闭相应连接 3. Internet如何标识计算机? 通过IE来标识的,通过Inct、Address来表示IP地址的 4. 什么是URL? URL有几部分组成?

URL即网络编程适配器,有五部分组成:Protocol (协议)、Host (主机名)、Port (端口)、 File (资源文件)、Reference (参考)

运行结束

5・java语言实现网上通信模式有几种方式?

URL通信模式,Socket通信模式,Datagram通信模式 6. URL通信模式如何读取网络资源?

(1) 创建类URL的实例,使其指向给定的网络资源 (2) 建立URL连接

(3) 通过 BuffomdlnputStroani 或 BufferodRcador 封装输入流 (4) 读取数据,进行数据处理 (5) 关闭数据流

7. 基于TCP/IP协议的Socket通信模式的实现步骤? &基于UDR协议的Datagram报文通信模式的实现步骤?

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuowenda.com 版权所有 湘ICP备2023022495号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务