JAVA复习.docx

上传人:b****9 文档编号:25414346 上传时间:2023-06-08 格式:DOCX 页数:18 大小:23.41KB
下载 相关 举报
JAVA复习.docx_第1页
第1页 / 共18页
JAVA复习.docx_第2页
第2页 / 共18页
JAVA复习.docx_第3页
第3页 / 共18页
JAVA复习.docx_第4页
第4页 / 共18页
JAVA复习.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

JAVA复习.docx

《JAVA复习.docx》由会员分享,可在线阅读,更多相关《JAVA复习.docx(18页珍藏版)》请在冰豆网上搜索。

JAVA复习.docx

JAVA复习

第1章Java程序设计概述

1)开发Java语言的公司?

Sun公司

2)Java的3个版本?

JavaSE(标准版)

JvavEE(企业版)

JavaME(精简版)

3)Java的三大核心机制

第一:

虚拟机机制:

通过虚拟机执行字节码文件实现跨平台

第二:

垃圾回收机制:

自动回收内存

第三:

代码验证机制:

加载代码后再执行

第2章Java语言的开发环境

1)JDK是什么?

是JAVA的开发和编译的工具

2)JRE是什么?

实时运行环境

3)JVM是什么?

Java的虚拟机

4)Java文件的类型?

.java保存源文件.class保存类文件

5)Java的编译运行原理?

用javac命令将.java文件编译成.class文件

第3章Java程序的基本结构

1)Java语言区分大小写吗?

区分大小写

2)main方法是作什么用处的?

是程序执行的入口

3)语句必须用分号结束吗?

4)Java中有几种注释,各自的功能

三种注释

\\单行注释

/*

*/多行注释

/**

*

*/文本注释

5)Java语言的数据类型是强类型还是弱类型?

强类型在声明变量中必须告诉是什么类型

6)Java语言中数据类型的划分?

有什么区别?

基本数据类型和引用数据类型

基本数据类型里面存放的是数值本身放在栈中它不是类

引用数据类型存放的是地址放在堆中引用数据类型都是类

7)基本类型都有哪8种类型?

1byte,2char,4short,4int,8long,4float,8double,boolean

8)布尔值可不可以用0或者非0数代替?

不可以只能是truefalse

9)直接写个整数10默认是什么类型的?

整形int

10)如何让一个整型的直接量变成long型的?

定义时加L或小写的l

11)整型数据在程序中直接使用可以使用什么进制?

十进制八进制十六进制

12)浮点运算在Java中有没有误差?

13)直接写一个3.14的直接量是什么数据类型的?

double类型

14)char型采取的是什么类型的字符集?

Unicode

15)语句和关键字之间可以有任意的空白吗?

可以有空白

16)标识符有什么起名规则?

不能以数字开头

可以是字母,$,下划线,不能使用关键字,保留字

17)中文的变量名可以吗?

可以

18)关键字和保留字有区别吗?

jdk1.5之前分为关键字和保留字,关键字有作用,保留字没作用(不包括1.5)1.5之后关键字和保留字统称为关键字java中

19)true,false,null可以用作标识符命名吗?

不可以,都是java中的关键字

20)一条声明语句可以声明多个变量吗?

可以声明

21)变量在没有赋值的情况下可以使用吗?

不可以使用

22)常量有什么特点?

只能复制一次

常量用final定义都为大写字母

23)算数运算符有哪些?

+-*/%++--

24)++和--放在前面和放在后面有什么区别?

++在前面是先自加1,然后再运算,++在后面是先使用该值运算,然后在自加1

--在前面是先自加1,然后再运算,--在后面是先使用该值运算,然后在自减1

25)-5%2等于几,5%-2等于几?

-11

26)5/2结果是不是2.5?

不是结果是2

27)任何数据类型都可以使用><>=<=运算符吗?

不可以引用数据类型和基本数据类型不能使用它运算

System.out.println(3>”s”);

28)’a’>’b’这个表达式编译正确吗?

能a的值是97false

29)逻辑运算符有哪些?

&&&|||!

30)逻辑与,逻辑或和短路与,短路或有什么区别?

逻辑与如果第一个条件为假,那么它还需执行另一个条件

短路与如果第一个条件为假,则不再执行另一个条件

逻辑或如果第一个条件为真时,它还会去判断另一个条件的真假

短路与如果第一个条件为真时,就不会去执行另一个条件

31)基本数据类型转换需要遵循什么原则?

小类型向大类型转换叫做隐式转换

大类型向小类型转换叫做强制转换

布尔类型不可以和其他数据类型相互转换

32)byteb=10这个语句是正确的,为什么10是int型比byte大还不需要强制转换呢?

正确在字节取值范围之内

33)byteb=(byte)true;这个转换成立吗?

不成立

34)inti=(int)“100”;这个转换成立吗?

不对“100”是引用数据类型Integer.pars(“100”);用包装类

35)char型和short型哪个比较大?

不能比较大小

36)字符串是不是基本类型?

不是是引用数据类型

37)空字符串用什么来表示?

“”

38)Strings=“”;和Strings=null;有什么区别?

前者有字符串字符串的内容是空的第二个指向的是空的字符串

39)两个字符串用什么运算符可以连成一个字符串?

用+连接

40)数学运算符加法和字符串连接符都是+,怎么区分?

都是数字就是做加法运算都是字符串就是字符串连接

41)判断字符串内容相同用什么方法?

equals它出自Object在这个类里比较的是引用

42)提供用户输入使用哪个类

java.util.Scanner

43)if语句可以用if(-1)形式判断吗?

不可以只能是布尔类型

44)if语句和循环语句的花括号什么时候可以省略?

if后只有一个执行语句的时候

45)switch语句有哪些规则?

case中不能有重复只,default不一定出现在结尾

1.switch语句中变量的类型必须为int,byte,short,char,枚举(JDK1.5),String(JDK1.7)

2.case后面的值不能重复

3.case后面只能放常量或字面值

4.当switch匹配一个分支后,将从这个分支开始执行后面所有的分支直接switch语句的结束,或遇到第一个break为止。

5.switch语句会先执行所有的case语句,当所有的case语句都没匹配到时,执行default

6.default语句不一定出现在switch语句的最后

46)对于退出循环break和continue有什么区别?

break是结束所在循环continue是结束本次循环,直接进入下一次循环

47)声明数组创建数组的方法?

int[]a={1,1,22,,2,5};

inta[]={25,51,32,564};

int[]a[]={{12,21},{15,45},{84,36,8}};

int[]array={1,2,3,4,5,6,7,8,9};java习惯

intarray1[]=newint[10];c习惯

int[]array2=newint[]{1,2,3,4,5};

48)int[]x和String[]s这两个数组对象,哪个是基本类型,哪个是引用类型?

都是引用数据类型数组中的元素是基本数据类型

数组,接口(interface),类(class)

49)数组元素下标最小是多少,最大是多少,超出范围会怎么样?

最小为0最大为数组的长度减1运行时发生异常

50)得到数组长度用length属性还是length()方法?

属性

字符串是用的方法

51)声明int[][]a=newint[3][],a是一个二维数组,a[0]本身是什么类型的?

是整型的一维数组

52)数组的大小一经创建可不可以改变大小了?

不可以在改变大小

53)可以把2个int型,3个double型,4个String型的值放到一个数组中吗?

不可以

54)java中的多维数组必须是要形成矩阵排列吗?

不是

55)操作数组比较方便的实用类?

Java.util.Arrays

冒泡只能升序,不能降序

publicstaticvoidmain(String[]args){

//TODOAuto-generatedmethodstub

int[]a={2,5,8,6,4,9,};

Arrays.sort(a);

for(intt:

a){

System.out.println(t);

}

}

第4章对象和类

1)OOP是什么意思?

面向对象程序设计

2)类和对象的区别?

类包含对象,现有类才有对象

对象是一组数据和相关方法的集合

类是用来描述一组具有共同状态和行为的对象的原型

类是个概念对象是具体的实现

3)类之间的3种关系?

依赖:

A试用了BA就依赖于B

聚合:

继承:

A是BA继承于B

4)一个java源文件可以写多个类吗?

可以只能有一个public类

5)类中有哪些成员?

成员变量成员方法构造方法块块不能调用,在调用构造方法之前使用

6)构造方法和普通方法的区别?

构造方法方法名和类名相同,

不能有返回值,不能用void修饰类一定有构造方法,普通方法需用void修饰

当类中没显示构造方法时,JVM会自动为构造方法添加一个无参,无方法体的构造方法public方法名(){}

构造方法无法任意调用,只有new时才能调用类的构造方法

this关键字:

在类中调用自身的成员。

7)普通方法可不可以也类名作为方法名?

可以

8)一个构造器调用另外一个构造器需要用什么语法?

this()调用自身的构造方法放在方法的第一句

9)什么时候虚拟机会自动添加一个默认构造器?

当类中没有构造方法的时候

10)实例成员和静态成员的区别?

不用static修饰的是实例成员

用static修饰的是静态成员

静态成员可以使用类名直接调用,也可以对象名调用

11)静态初始化块static{}的执行时机是什么时候?

第一次使用类的时候后执行只执行一次

12)静态方法可不可以直接调用同一个类中的非静态方法?

不可以只能调用同一个类中的静态方法

13)包是什么?

是文件夹解决累的重名问题

14)把一个类放到包中,需要在类中加上什么语句?

package包名;

15)什么时候需要导入类?

用什么语句?

当使用其它包中的类的时候

用import语句

16)Eclipse默认包中的类可以导入吗?

不能导入

17)java中哪个包中的类是自动导入的?

java.lang包

18)什么叫做完整类名?

package包名.类名

19)局部变量和全局变量的区别?

区别

局部变量

全局变量

声明位置

方法或块内部

方法外类内部

访问权限修饰符

没有访问权限

有访问权限

默认值

没有默认值

有默认值

使用形式

直接使用

对象调用

作用域

在方法或语句块内部

整个类

生命周期

进入方法或语句块创建退出方法或语句块销毁

随着对象的创建而创建随着对象的销毁而销毁

20)赋值语句赋给目标的是值还是引用?

基本数据类型赋的是值

引用数据类型赋的是引用

第5章继承和多态

1)子类继承了父类的什么东西?

成员变量成员方法

2)私有成员能被子类继承吗?

能但不能使用

3)Object是什么类?

是所有类的父类

4)java中是单继承还是多继承?

单继承一个类只能有一个父类

5)访问权限修饰符有几种,访问的范围又是多大?

 

类内部

同包下的类

不同包下的子类

不同包下的其它类

private

Y

N

N

N

默认(包权限)

Y

Y

N

N

protected

Y

Y

Y

N

public

Y

Y

Y

Y

有四种:

6)覆盖方法的规则有哪些?

重写的方法和被重写的方法发放名一样,参数的个数,返回值

重写方法的访问权限要小于等于被重写的方法的访问权限

static修饰的方法不能被重写

1.子类根据需要重写父类中的方法。

2.重写的方法要与被重写的方法具有相同的方法名,参数列表,返回类型。

3.重写的方法的访问权限要大于或等于被重写方法的访问权限。

4.static修饰的方法不能产生重写。

5.重写的方法不能抛出比被重写的方法范围更大的异常。

(小于或等于可以)

7)参数列表是否相同从哪几方面看?

个数顺序类型

8)可变长参数的声明格式是什么?

实际上是什么类型的?

格式:

数据类型…变量名,本质是一个一维数组。

9)this和super是作什么用处的?

this调用自己的成员

super调用父类的成员

10)super代表子类中的父类对象引用吗?

不,这个错误的说法,super不代表任何对象引用,仅仅是一个关键字

11)什么时候子类构造器会自动调用父类无参构造器?

第一句是spuer();

12)一个父类类型的引用变量可以引用一个子类的实例吗?

可以子类赋给父类

13)多态对象有什么特点?

多态对象只能使用父类的成员,但如果多态对象使用了被子类覆盖的方法,则会动态绑定使用子类的成员,称为虚拟方法调用

14)引用类型之间的类型转换需要遵循哪些规则?

子类可以直接赋值给父类

父类必须强化转才能赋给子类

当父类的对象指向的不是子类的对象时,会发生运行时异常

当两个类之间没有继承关系时,不能转换,会发生编译失败

15)instanceof操作符是作什么用处的?

判断等号左边的对象是不是右边对象的对象或子类的对象,如果左边对象和右边的类没有继承关系,编译失败

16)toString方法什么时候会自动被调用?

ToString出现在Object里

当打印一个对象时或将一个对象于一个字符串链接时,JVM会自动调用这个对象的toString()方法。

17)Object默认的equals方法实现的是比较内容还是比较引用地址?

比较的是引用,本来自Object类中

18)final修饰符如何使用,使用了final修饰符有什么特点?

修饰的变量,只能赋值一次

修饰的方法,子类不能重写父类的final的方法

修饰的类,不能被继承

19)abstract修饰符如何使用,使用了abstract修饰符有什么特点?

修饰类抽象类不能实例化只能使用抽象类的子类

修饰成员方法修饰抽象方法抽象方法只有方法的声明没有方法的实现子类必须重写父类的所有抽象方法(子类是抽象类可以不写)抽象方法所在的类必须是抽象类

修饰接口

20)abstract不能和哪些修饰符配合使用?

不能与publicstaticfinal

21)可以在非抽象方法中调用抽象方法吗?

可以

第6章泛型程序设计

1)泛型的特点是什么?

主要特点是类型参数化,后期绑定数据类型

2)泛型支持基本类型吗?

不支持

3)如果没有传入类型参数,默认是什么类型?

Object

4)泛型方法有什么特点?

将泛型参数声明在方法中,调用方法的时候绑定泛型

5)泛型类声明泛型参数的时候,表示什么意思?

添加一个附加条件汤T必须是A的子类类型

第7章接口和内部类

1)声明一个接口的关键字是什么?

interface

2)接口中的成员有什么特点?

默认方法都是publicabstract

接口中的常量都是publicstaticfinal

3)接口能创建对象实例吗?

不能

4)接口和类的关系?

类可以实现借口

当类实现接口时必须重写借口中所有的抽象方法

5)接口和接口的关系?

接口可以继承多个接口,借口可以继承其它接口

6)内部类如何定义?

嵌套在另一个类中,可以使用任何访问权限,能用static修饰

7)内部类可以分成几种?

四种

静态内部类:

实例内部类

局部内部类

匿名内部类在176页(事件监听时用)

8)如何在实例内部类中访问外部类的成员?

普通的内部类可以直接使用

静态内部类使用静态的

第8章异常处理

1)异常的对象的根类是哪个类?

Throwable

2)Throwable类有哪两个分支?

ErrorException

3)Exception类有哪两个分支?

RunntimeException非运行时异常IOExcption

4)如果在try块中发生异常,那么程序将会跳转到哪?

catch或finally

5)catch语句可以用父类类型捕获子类异常吗?

可以

6)处理异常代码finally语句会在什么时候执行?

无论什么时候都会执行

7)如何声明已检查异常,由谁来处理这个异常?

Throws声明一个已检查异常有方法的调用者来处理异常

8)如何抛出一个异常?

在定义方法是throw一个异常

9)如何创建一个自定义的异常类?

让类继承Exception或Exception的子类

10)覆盖方法对于异常有什么要求?

重写的方法不能抛出比被重写的方法范围更大的异常。

(小于或等于可以)

 

第9章java常用类

1)字符串String是可变类还是不可变类?

不可变的

2)StringBuffer类和String类有什么区别?

StringBuffer是可变字符串

String是不可变字符串

3)StringBuffer类和StringBuilder类有什么区别?

前者是线程安全的后者是线程不安全的

4)Set集合和List集合共同的父接口是什么?

Collection接口

5)Set集合和List集合有什么区别?

不保存元素加入的顺序,不能有重复值

保存元素加入的顺序,可以有重复值

6)ArrayList和LinkedList有什么不同?

线性表按索引查询元素时效率高,但添加与删除元素时效率低

链表按索引查询元素时效率低,但添加和删除元素时效率高

7)Hashtable和HashMap有什么不同?

Hashtable是线程安全的,HashMap是线程不安全的

8)Vector和ArrayList有什么不同?

Vector是线程安全的,ArrayList是线程不安全的

按索引查询元素时效率高,但添加与删除元素时效率低

9)java中有几个包装类?

八个

10)装箱和拆箱分别是什么意思?

装箱指的是把基本类型包装成包装类的引用类型

拆箱指的是把包装类形式的引用类型转换为基本类型

例如:

IntegerobjInt=newInteger(10);//装箱

inti=objInt.intValue();//拆箱

11)JDK1.4和1.5的装箱和拆箱有什么区别?

自动拆装箱,例如:

IntegerintObj=10;//自动装箱

inti=intObj+5;//自动拆箱

第10章IO流

1)流分成哪两类?

输入流/输出流

FileInputStream/FileOutputStream字节流

FileInputReader/FileOutWrite字符流

2)和文件流相关的有那几个类?

3)文件流操作应该用字节流还是字符流?

二进制的文件用字节流文本文件字符流

4)文件操作用哪个类?

java.io.File类

第11章线程

1)创建一个线程类的两种方式?

类继承Thread类

类实现Runnable接口

2)线程体应该放在哪个方法里面?

publicvoidrun(){

}

3)启动新的线程用什么方法?

start

4)一个线程对象能够用start多次启动吗?

不能

5)线程有哪几种主要状态?

新建就绪运行阻塞终止

6)线程的同步需要用什么方法?

旧的方法是用synchronized关键字

新的方法是用ReentrantLock类的lock和unlock方法

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 农学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1