0902基础问题.docx

上传人:b****7 文档编号:11209350 上传时间:2023-02-25 格式:DOCX 页数:23 大小:28.42KB
下载 相关 举报
0902基础问题.docx_第1页
第1页 / 共23页
0902基础问题.docx_第2页
第2页 / 共23页
0902基础问题.docx_第3页
第3页 / 共23页
0902基础问题.docx_第4页
第4页 / 共23页
0902基础问题.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

0902基础问题.docx

《0902基础问题.docx》由会员分享,可在线阅读,更多相关《0902基础问题.docx(23页珍藏版)》请在冰豆网上搜索。

0902基础问题.docx

0902基础问题

1)接口是否可继承接口?

抽象类是否可实现(implements)接口?

答:

接口可以继承接口。

抽象类可以实现(implements)接口

2)你是怎么来理解join()方法?

答:

谁调谁先执行

(当我用线程的对象调join()方法,自己执行别的线程等待,自己执行完了别人才执行。

3)你是怎么来理解final?

Final修饰的方法不可以重写

final修饰的类不可以继承。

Final修饰的变量不可以改变。

(及最终量类似于常量)

4)ByteArrayOutputStream类中通过什么输出到文件中呢?

答:

首先通过write()方法输入到Byte数组中,再通过writeTo()方法。

5)Class.forName的作用?

为什么要用?

答:

调用该访问返回一个以字符串指定类名的类的对象。

因为要动态的加入类。

6)排序有那些方法:

A交换排序法b冒泡排序法c选择排序法d插入排序法

7)抽象方法只能放在那个类当中?

答:

只能放在抽象类中。

8)构造方法能不能被重写?

是在继承机制之上,因为构造方法不能被继承所以不能被重写,

重写是要和方法名一样,而构造方法要与类名一致,所以不能

重写构造方法。

9)ififif与ififelse那种情况效率更高?

后者效率更高,因为if情况判断了正确的情况下它还有继续

下面的判断,而后者它只要进了一个if其余的情况就不进.

10)封装主要分为哪俩个阶段?

从具体到抽象,从抽象到具体。

11)switch语句和if语句的区别?

1.swith只能判断相等的情况,而if可以判断任意类型的布尔表达式。

2.在同一个switch语句中不能有相同的case常量。

switch可以嵌套。

12)21.八大基本类型的包装类分别是什么?

BooleanByteCharacterDoubleFloatIntegerLongShort

13)staticmethod能不能有static的变量

不能还是那个原理是static修饰的变量输入类而不是属于某个对象。

14)什么是向上转型和向下转型

向上就是子类转父类,向下是父类转子类的。

15)IO流里最基本的流是什么?

答案:

InputString,OutputStream,Reader,Writer。

16)可以调用run()启动一个线程吗?

run()与Start()的区别?

答案:

不可以,因为调用run()没有生命周期。

17)内置注解有哪三个?

答案:

@Override,@Deprected,@SuppressWarning。

18)SortedSet接口与Comparable接口的区别?

答案:

SortedSet它默认的是升序,而Comparable接口它可以自定义序则。

19)接口可以做形参吗?

答案:

可以

20)float型floatf=3.4是否正确?

不正确。

精度不准确,应该用强制类型转换

21)java中实现多态的机制是什么?

方法的重写Overriding和重载Overloading是Java多态性的不同表现。

22)重写Overriding是父类与子类之间多态性的一种表现,重载Overloading

是一个类中多态性的一种表现

23)sleep与wait的区别?

1.sleep不释放对象锁,wait释放对象锁2.sleep是Thread类中的wait是Object类中3.wait是同步的。

  sleep是线程类(Thread)的方法,导致此线程暂停执行指定时间,给执行机会给其他线程,但是监控状态依然保持,到时后会自动恢复。

调用sleep不会释放对象锁。

wait是Object类的方法,对此对象调用wait方法导致本线程放弃对象锁,进入等待此对象的等待锁定池,只有针对此对象发出notify方法(或notifyAll)后本线程才进入对象锁定池准备获得对象锁进入运行状态。

24)数组中有length方法吗?

没有它只有length的属性

25)如果一个方法后加了

>我在去增加一个int类型可以吗?

不可以因为

>代表了所有的泛型,所以它不知道你明确的你

要加的是什么类型,所以运行会报错。

26)static用于多态合适吗?

不适合,因为多态的概念是父类引用指向子类对象,而static修饰的

属性是属于类而不是属于某个对象。

27)list与set的区别?

List后台的储存结构是线性结构,而set后台的储存结构是映像;

List里面储存进去的对象是有序的,而set是无序的;

List可以允许多个null,允许重复,set里面最多允许

一个null,而且不能重复。

28)二叉树的3种删除方式?

A:

删除叶子节点;

B:

删除时若只有一个左孩子或者右孩子的情况;

C:

删除一个节点既有左孩子又有右孩子的情况。

29)数据类型的作用?

1.什么样的数据类型决定存储什么类型的数据

2.决定了存储数据的大小

3.数据类型决定了分配字节的大小

30)重写和重载的特点?

1.重写建立在继承机制之上

2.重载是一个类中的表现

3.重写与父类方法名以及参数列表相同,重写的修饰符大小大于等于父类的权限

4.重载在同一类中方法名相同形参列表不相同,与返回值无关

31)TreeMap和TreeSet的区别?

相同点:

都可排序,放进去的类型要统一

不同点:

TreeMap实现了map,sortedmap接口;

TreeSet实现了setsortedset接口;

TreeMap是键值对,TreeSet是映像。

32)TreeMap和HashMap是以什么作为存储结构的?

TreeMap是以哈希码作为存储结构

HashMap是以树作为存储结构的。

33)说说数据结构的分类?

按逻辑结构分:

A.线性结构

1.线性表

2.队列

B.非线性结构

1.树

2.图

34)有一个父类,有一个子类,子类通过什么关键字来调用父类的构造方法?

super

35)Java源程序经编译生成的字节码文件的扩展名是什么?

class

36)当实现Runnable接口时,要实现的方法是什么?

publicvoidrun()

37)对象操作的方法有哪些?

(1)直接系列化

(2)传参

(3)返回值

(4)数组

(5)反射

38)请你说出你所知道的线程同步的方法?

(1)wait()

(2)notify()

(3)notifyAll()

39)顺序表和链表的区别?

三点

(1)顺序表的元素放在一组连续的存储单元中

(2)顺序表便于查询,修改,而不便于插入和删除元素,而链表便于删除,插入,不便于查询和修改

(3)顺序表是静态的存储结构,链表是动态的存储结构

40)在Java处理异常语句的关键字有哪些?

throwsthrowtrycatchfinally

41)线性表有哪几种运算?

七种(对元素来讲)

(1)增加

(2)删除

(3)查询

(4)修改

(5)插入

(6)拆分

(7)合并

42)当一个线程进入一个对象的一个synchronized方法后,其它线程是否可进入此对象的其它方法?

能,当线程进入这是对象的此方法后,也可以进入其他方法?

43)迭代器有哪几种;

interator

ListInterator

enumration

44)main方法可不可以用final修饰;

可以;能运行;

45)iterator与ListInterator的区别;

iterator迭代的方式是从头到尾;

ListIterator迭代方式是从头到尾也可以从尾都头;

46)二叉树的遍历方式;有几种;

先序:

中左右

中序:

左中右

后续:

左右中

47)一个chara=10;可以吗;

可以;因为整形的值的ASCII码表的值就是一个char类型的字符所以可以;

48)chara=10;

longb=a+a;可以;ASCII码表对应一个值就是十而一个10+10可以附给一个long的参数;

49)chara=10;

longb=a+a;

Stringvar="var";

Stringobj=var+b;可以

50)String可不可以被继承;

不可以因为String类被final修饰不可被继承;

51)String类当中可不可以有一种方法可以得到一个byte数组的对象

有:

getBytes();

52)浅拷贝注意哪三点?

答:

1.实现Cloneable接口2.重写clone();3.缺省行super.clone();

53)collection与collections的区别?

答:

collection是java.util下的接口,它是有关集合结构的父接口。

collections是java.util下的一个帮助类,它包含有各种有关集合操作的静态方法。

54)Hashtable与HashMap的区别?

答:

1>Hashtable键值都不允许null,HashMap键只允许一个键为null,值允许多个文null。

2>Hashtable是同步的,线程安全,速度慢。

HashMap是异步的,非线程安全,速度快。

3>Hashtable继承了Dectionary类。

55)throws与throw分别有什么作用?

答:

throws往方法外部抛出异常throw是往方法内部抛出异常。

56)final,finaly,finalize的区别?

答:

final是一个关键字。

finaly是异常清除操作块。

finalize是垃圾回收器。

57)StringBuffer和StringBuilder有什么区别?

答:

StringBuffer是线程安全(同步),StringBuilder非线程安全(异步)。

58)调用一个有返回值的方法,我不接收可不可以?

可以

59)Switch语句内case语句后可不可以写成字符a加字符b?

可以,就好比是a的Unicode码加上b的Unicode码也就是195。

60)Doubled=1.0f;这一定义可不可以?

可以。

Floatf=1.0D可以吗?

不可以。

61)一个char数组,直接打印着个数组名,打出来的是什么,打印数组名.toString()打出来的是什么?

直接打印时他的值;.toString()打印的是他的哈希码。

62)inti=1+'a',可以吗?

如果可以结果是多少?

可以结果是98;

63)final修饰的变量不赋初始值可以访问吗?

答:

不可以

Staticfinal修饰的变量必须赋初始值

必须要赋

64)break与continue有什么区别?

答:

break跳出循环continue结束本次循环。

65)在API里八大基本类型有什么方法能把基本类型封装成它的包装类?

答:

valueOf();方法。

66)switch语句内没有case和default语句可不可以?

可以。

67)error与exception有什么区别?

答:

error是一种程序员不可能处理的错误。

exception是一种实现和设计问题。

程序正常运行是不可能发生的问题。

68)this和super分别有什么作用?

答:

this是可以调用本类方法和属性;super可以调用父类的方法和属性。

用static修饰的变量和方法不能以任何方式引用this和super.

69)==和equals的区别?

用于八大基本类型时==用于比值,

用于对象时是比址(且是Object里的)

若不重写equals方法用于比地址,重写了自己定义。

70)synchronized关键字可以对对象加互斥锁

71)接口和抽象类的共同特征?

答:

1.里面都有抽象方法;

2.都不能被实例化

72)Join能造成死锁吗?

在什么情况下会造成

答:

能,只有在本类中,用当前的对象调用Join方法,就会造成死锁。

73)调用static属性和方法可以有那几种方法?

答:

用类名.

用对象名.

74)default在那些地方使用过。

答:

修饰类,方法,变量,还有在switch语句中。

75)局部变量的生命周期。

答:

随着方法的结束而结束

76)讲一下collection结构图。

答:

collectionabstrctcollection这一系列的自己去找

77)谈谈你对treemap的理解。

答:

实现了map接口。

底层以键值对的方式存储,可以排序,不允许重复,键只允许一个null,值允许多个null

78)你是怎样理解形参和实参的。

答:

形参:

就是形式参数的意思,

实参:

就是实际参数的意思,在调用该方法时,传过去的参数。

79)按引用传递的时候,传递前和传递后他们指向的还是同一块内存空间吗?

答:

是同一块内存空间。

80)静态方法能不能调用非静态的方法?

为什么?

答:

不能,因为静态的方法一编译就会分配内存,而普通方法不会,所以不能调用。

81)冒泡排序,如果我有8个元素要排序,那么他要比较好多轮。

答:

至少7次。

82)使用接口应该注意那些方面。

答:

1.修饰符只能用public和有元的修饰

2.接口名采用和文件名一致的原则

3.接口可以继承接口,不能继承类。

4.接口里面不能有构造方法。

83)泛型的最大好处?

答:

泛型可以使参数类型化。

84)满二叉树与完全二叉树,完全二叉树与满二叉树的区别:

答:

是完全二叉树不一定是满二叉树,是满二叉树的一定是完全二叉树;

满二叉树:

除叶子节点外,其余节点都不为空。

成为满二叉树。

完全二叉树:

最后一层,从左到右不能空的为完全二叉树。

85)实现线程有哪几种方法?

(1).继承Thread

(2).实现了Rnnable接口。

86)什么是观察者模式?

答:

观察者与被观察者的关系,被观察者发生了改变,观察者作出相应的行为。

87)有几种数据类型?

答:

目前有两种一种是基本类型:

包含八大基本类型另一种是复合类型:

包含

包,类,接口,String,数组。

88)传参有几种类型?

有几种特殊类型?

答:

(1)基本类型

(2).对象类型

有一种String它既可以看成是对象,也可以看出是值。

89)启动垃圾回收器有几种方法?

答:

有二种一个事直接System.gc();runtime.getruntime.ge();

90)类实现了seriazeble接口有一个最大功能?

答:

实现对象序列化。

91)怎样将一个String添加到另一个String的后面?

答:

调用String类里的concat方法就可以了。

92)在util包里的cllection接口类实现了这个接口,它必须实现那几个接口?

答:

cllection接口和iterable接口因为迭代那个方法贯穿整个cllection接口都需要迭代把元素和对象拿出来。

93)sleep,wait,yield的区别?

sleep不释放cpu资源。

wait释放cpu资源,必须在同步情况使用。

yield让出cup资源,进入就绪状态等待cpu服务。

94)打个比方:

在你生产产品的时候,产品过剩了怎么办?

也就是调用什么方法比较好呢?

答:

wait()方法和notify()方法来比较好。

当生产产品过剩了就调用wait()方法来比较好,

根据自定义当消费产品大于生产时就调用notify或notifyAll。

95)请说说引用和对象?

答:

引用就是声明变量时是没有赋值的。

对象就是new

96)请你说说你所学过循环语句的分别的执行过程?

答:

首先有四种:

for(表达式1;表达式2;表达式3){

语句..

}

先计算表达式1,接着执行表达式2,若满足表达式2的条件,则执行下面的语句,再计算表达式3,再判断表达式2是否满足条件,一直循环下去,直到表达式2不满足条件为止。

for(类型变量名:

数组或者集合){

语句.....

判断for里面的是否满足条件

在执行语句块

while(逻辑表达式){

语句....

}

先判断逻辑表达式的值,如果其值为真,才执行下面的语句直到其值为假。

 

do{

语句...

}while(逻辑表达式);

先执行do里面的语句,在判断逻辑表达式的值,若其值为真,则在执行语句,直至其值为假。

 

97)请说说整数类型各个的存储空间和表述范围?

byte:

1字节-128至127

short:

2字节-2的15次幂至2的15次幂减1

int:

4字节-2的31次幂至2的31次幂减1

long:

8字节-2的63次幂至2的63次幂减1

98)请你说说byteshortchar之间可以互相转换吗?

为什么?

他们三者之间在计算时首先会转换为int型,容量大的数据类型转换为容量小的类型时,要加上强制转换,但是可能会造成精度降低或溢出。

99)AbsratectQuene他的存储结构是什么?

答队;

100)线性结构的特点?

答;在一个数据元素的非空有限集合中,有且仅有一个被称为“第一个”数据元素,仅有一个被称为最后一个元素,除第一个元素外,其余所有元素有且仅有一个直接前驱元素,除最后一个元素外其余所有元素有且仅有一个后继元素。

101)树与二叉树的区别?

答;

(1)二叉树可以为空,而树不可以(至少要有根节点)

(2)二叉树的子树有顺序关系,而树没有。

(3)二叉树的度必为0,1,2二树的节点度可以大于2。

102)Java语言最大的特点?

答;跨平台

103)泛型,枚举是jdk一点几新增的?

答;1.5;

104)什么导致一个线程阻塞?

读取一个文件的时候还有sleep()wait()join()

105)初始化得过程?

静态块普通方法构造函数

106)字节码的校验是什么?

1.变量在使用前的初始化

2.方法调用与对象引用类型之间的匹配

3.是否违法专用数据和方法访问规则

4、运用时的堆栈是否溢出

107)传值和传址是什么?

1.在八大基本类型里就是传值而引用对象就是传址

108)同步与异步还有临界资源?

临界资源就是多个线程操作同一个数据

109)类的初始化大致上有这么几个方面。

a.静态变量的初始化b.一般实例变量的初始化c.构造函数的初始化

110)使用数组前应该注意的什么?

数组在使用之前,必须要保证给其分配内存(系统会用默认值初始化),不可只定义。

111)如果一个类继承了父类,父类里有一个静态块,子类里也有个静态块,对子类进行实例,父类的静态块先执行还是子类的先执行?

答:

父类的先执行(因为在装载子类时必须检查父类的错误所以先执行父类的静态块)

112).静态块与动态块有什么特点?

答:

静态块在类装载的时候就被加载,静态块只加载一次,动态块new一次就加载一次。

113)interrupt();isInterrupted();interrupted();分别有什么作用?

114)static修饰的方法可否支持多态?

答:

不能,因为static修饰的属性与方法属于类变量,而多态是建立在对象的基础之上的。

115)枚举可否继承别的类,和实现别的接口?

答:

当我们用enum定义一个属性时就不能,当我们使用lang包中的Enume时就可以因为它是枚举的封装类。

116)我们自定义一个线程有哪几种不同的方法,相比而言哪种比较灵活?

答:

有两种方法。

一个是继承Thread类,另一个是实现Runnable接口。

相比而言实现runnable接口比较灵活,但它没有生命周期。

117)请简单谈谈并行与并发?

答:

①并发:

一个cpu为多个线程服务,②并行:

多个cpu给多个线程服务。

118)一般我们用transient关键字用来申明什么?

答:

用来申明一个不想被序列化的域。

119)io中有哪一个流可以设置追加模式?

答:

FileOutputStream。

120)泛型方法能直接在普通类中声明?

答:

能。

不一定是泛型类才可以有泛型方法。

121)instanceof的作用?

答:

测试对象是否是某类的实例。

122)普通方法的方法名可以与类名一致吗?

答:

可以。

123)在什么情况下局部变量会覆盖全局变量?

局部变量与全局变量重名

124)变量命名的规则有哪几点?

为什么java支持中文,日文命名?

而c,c++不可以。

答:

1)不能用纯数字2)开头不能用数字3)java支持中文、日文作为变量名4)两个或多个英文组合时第一个英文的首写字母小写,后面的英文首字母大写(但不按此要求不会报错);5)注意:

一个字符赋给int型是表示ascII码,赋给char是字符。

125)接口与抽象类的区别?

答:

抽象类可以有自己的部分,而接口不可以,抽象只支持单根继承,而接口支持多继承.

126)继承最大好处?

答:

可以使代码重用,使程序员更专注的编写子类的代码,不仅减少了代码数量.而且提高了代码质量.

127)在泛型的参数化类型具备继承关系吗?

不具备

128)包的作用?

防止命名混乱,控制包中类,接口,成员变量,和方法的可见性

129)继承与实现的区别?

继承只能继承一个,实现可以实现多个,

继承过来的方法有些方法可以不必要重写,而实现必须要重写所实现的接口中的所有方法。

130)Abstract为什么不能与,private,final,同时使用?

因为abstract强烈要求继承它,而private是不能被继承的,final是强烈反对继承。

所以abstract与private,final冲突。

131)什么是数据元素?

答案:

数据元素是数据的基本单位,即数据几种的个体就是数据元素。

也称为“节点”或“记录”。

132)枚举里面如果有方法应注意那些?

答案:

1.枚举里面如果有方法,那么必须在最后一个元素的后面加上“;”分号,再重写枚举元素的方法。

枚举和数组一样,元素从0开始。

133).枚举的最大特点有那些?

答案:

一个变量可以有多个值。

134).自定义异常分为哪几种?

答案:

1.编译时的异常,2.运行时的异常

135)throw与throws的区别?

答案:

throw是声明异常,throws是往外抛出异常。

136)线程的五种状态

答:

新建就绪运行阻塞终止五个状态

137)TreeSet特性的2个接口

答:

接口1(set)

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

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

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

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