Java面试基础题.docx

上传人:b****5 文档编号:27740509 上传时间:2023-07-04 格式:DOCX 页数:21 大小:24.37KB
下载 相关 举报
Java面试基础题.docx_第1页
第1页 / 共21页
Java面试基础题.docx_第2页
第2页 / 共21页
Java面试基础题.docx_第3页
第3页 / 共21页
Java面试基础题.docx_第4页
第4页 / 共21页
Java面试基础题.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

Java面试基础题.docx

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

Java面试基础题.docx

Java面试基础题

JAVA面试题-COREJAVA部分

1.在main(String[]args)方法内是否可以调用一个非静态方法?

2.同一个文件里是否可以有两个public类?

3.方法名是否可以与构造器的名字相同?

可以

4.局部内部类是否可以访问非final变量?

5.初始化了一个没有run()方法的线程类,是否会出错?

不会

6.选择语句case中,允许使用的值有哪些?

Int,short,byte,char

7.Math,String可以继承吗?

Instanceof后面跟的是什么。

类名

构造器可以是私有的吗?

不可

8.在try-catch-final块中的退出语句。

publicclassTest

{

publicstaticvoidmain(String[]args)

{

inta=1;

try

{

a=a/0;

}catch(Exceptione)

{

System.out.println("catch");

return;

//System.exit(0);

}

finally

{

System.out.println("finally");

}

}

}

注:

   try-catch-finally块的顺序能不能调换

9.下面都是正确的main方法签名吗?

答:

ABC

Apublicstaticvoidmain(String[]args)

Bpublicstaticfinalvoidmain(String[]args)

Cstaticpublicvoidmain(String[]args)

Dstaticpublicabstractvoidmain(String[]args)

10.Collection与Collections的区别?

答:

Collection是接口,存放单值记录的集合结构的父接口。

Collections是类,对集合结构进行操作的工具类。

11.RandomAccessFile类的父类是?

Map接口是不是Collection接口的子接口?

答:

RandamAccessFile类的父类是Object.

Map接口不是Collection接口的子接口。

12. integer和long操作/和%与float和double有什么不同。

答:

int32位范围-231---231-1

Long64位范围-263----263-1

Int----->long(自动转换)long------>int(强制转换)

“/”是用来求商,“%”是用来求模(或求余)

Float32位范围无穷大

Double64位范围无穷大

Float------>double(自动转换)double----->float(强制转换)

13.普通内部类可以拥有静态变量吗?

静态内部类呢?

答:

普通内部类不可以拥有静态变量。

静态内部类可以拥有静态变量。

14.运行时异常与一般异常有何异同?

答:

运行时异常系统不需要我们去处理。

一般异常系统要求我们去处理。

15. File类有没有处理文件内容的方法?

InputStream和OutputStream能不能创建对象?

答:

File类没有处理文件内容的方法。

InputStream和OutputStream不能创建对象。

16. 所有关于NaN(NotaNumber)和non-NaN的比较的值?

17.说出ArrayList,Vector,LinkedList的存储性能和特性.

答:

ArrayList轻量级(耗内存)非同步(并行)扩展一半

Vector重量级(耗内存)同步(串行)扩展一倍

ArrayList和Vector是以数组的形式存取数据的。

LinkedList以链表的形式存取数据的

18.谈谈final,finally,finalize的区别。

答:

Final修饰符(关键字),一个类被声明为final,就不能再派生出新的子类,不能作为父类被继承,被声明的变量必须在声明时给定初值,在以后的引用中只能读取,不可修改,其方法也只能使用,不能重载。

19.AnonymousInnerClass(匿名内部类)是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?

答:

可以,(是隐含地)。

20.StaticInnerClass和MemberInnerClass的不同。

答:

----staticinnerclass:

---定义在类里

---本身定义所有的属性和方法;

---能够直接访问外部类的静态的属性和功能;

---不能用private修饰,用static修饰

---Outer.Innerin=newOuter.Inner();

---不能与外部类同名

----memberinnerclass:

---定义在类里,不用static修饰

---只能定义非静态的属性和功能

---访问外部类的所有属性和功能

---Outer.Innerin=newOuter().newInner();

21.&和&&的区别。

答:

&是位运算符,&&是逻辑运算符。

如果按逻辑运算来说,&是非短路方式,&&是短路方式。

22.HashMap和Hashtable的区别。

答:

HashMap非同步允许有空键和空值。

Hahtable同步不允许有空键和空值。

23.什么时候用assert?

答:

assert:

断言JDK1.4版本以后,调试用的。

24.Strings=newString("xyz");创建了几个StringObject?

答:

创建了两个StringObject.

25.Math.round(11.5)等於多少?

Math.round(-11.5)等於多少?

答:

Math.round(11.5)等於:

12

Math.round(-11.5)等於:

-11

26.shorts1=1;s1=s1+1;有什么错?

shorts1=1;s1+=1;有什么错?

答:

shorts1=1;s1=s1+1;系统会提示损失精度。

shorts1=1;s1+=1;没有错

27.数组有没有length()这个方法?

String有没有length()这个方法?

答:

有。

28.Overload和Override的区别。

Overloaded的方法是否可以改变返回值的类型?

答:

overLoading--->namesame,paramnotsame,returntypemaybesame

--->发生在一个类的内部,也可能是父类和子类之间

--->就近向上扩张-->向封装类过渡

Override

---发生在父类和子类之间

--namesame,paramsame,returntypesame

---访问控制权限不能更窄

--不能抛出更多的异常

---private,finalcan'toverride

---staticmethod只能被静态方法覆盖,不体现多态

---synchronized特性不能遗传

29.”==”与equals有何区别?

当两边类型不匹配时,有何不同?

答:

”==”判断引用的值是否相等。

当两边类型不匹配时,编译报错

equals判断对象的内容是否相等。

当两边类型不匹配时,返回fales.

30.给我三个你最常见到的runtimeexception。

答:

1.ArithmeticException

2.nullponterException

3.地址越界异常

31.error和exception有什么区别?

答:

error和exception的总的父类是Throwable

---Error:

是非常严重的错误,系统不要求我们处理。

---Exception:

UncheckedException(RuntimeException)

CheckedException(必须处理)

32.List,Set,Map是否继承自Collection接口?

答:

List和Set是继承自Collection接口的。

Map不是继承自Collection接口的。

33.sleep()和wait()有什么区别?

答:

sleep()是暂停执行,处于阻塞状态中,会自动醒来。

Wait()是处于等待队列中,必须有notify(),notifyAll()或interrup()调用时,才会出来。

34.abstract的method是否可同时是static,synchronized,native?

答:

不可以。

因为static,synchronized,native,它们的方法都不能被覆盖,然而abstract的method是只有名的定义,没有具体的实现,其存在的意义就是被覆盖。

35.接口是否可继承接口?

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

抽象类是否可继承实体类答(concreteclass)?

答:

接口可以继承接口,抽象类可以实现(implements)接口,抽象类可以继承实体类(concreteclass),(要求其他类最好有无参的构造方法)。

 

36.Constructor是否可被override?

答:

Constructor不可以被override?

37.启动一个线程是用run()还是start()?

有什么区别?

答:

启动一个线程是用start()。

Run()是运行一个线程。

38.Class.forName的作用?

答:

Class.forName的作用是用来获得元对象。

39.写一个冒泡排序的程序。

40.几种常用的数据结构及内部实现原理。

41.作用域public,private,protected,以及不写时的区别。

答:

public作用在本类,本包,子类,以及其它的地方。

Private作用在本类。

Protected作用在本类,本包,子类。

Default作用在本类,本包。

42.ArrayList和Vector的区别?

答:

ArrayList轻量级(耗内存)非同步(并行)扩展一半

Vector重量级(耗内存)同步(串行)扩展一倍

ArrayList和Vector是以数组的形式存取数据的。

43.char型变量中能不能存贮一个中文汉字?

为什么?

答:

char型变量中能,且只能存贮一个中文汉字。

因为受char类型的编码方式所限。

44.现在输入n个数字,以逗号,分开;然后可选择升或者降序排序;

45.编程题:

用最有效率的方法算出2乘以8等於几?

46.两个对象值相同(x.equals(y)==true),但却可有不同的hashcode,这句话对不对?

47.当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?

答:

是引用传递。

48。

编程题:

写一个Singleton出来。

方式一:

醉汉式

publicclassSingleton

{

privatestaticSingletontest=newSingleton();//静态的。

保留自身的引用。

//必须是私有的构造函数

privateSingleton(){}

publicstaticSingletongetInstance()//公共的静态的方法。

{

returntest;

}

}

方式二:

懒汉式

publicclassSingleton

{

privatestaticSingletontest=null;//静态的。

保留自身的引用。

//必须是私有的构造函数

privateSingleton(){}

publicstaticSingletongetInstance()//公共的静态的方法。

{

if(test==null)

{

test=newSingleton();

}

returntest;

}

}

49.描述一下JVM加载class文件的原理机制?

50.列出一些控制流程的方法;

答:

1.if-----else

2.switch------case(break)

3.do------while

4.while-------do

5.for

51.Java中的异常处理机制的简单原理和应用。

答:

1Throwable

---Error

---Exception:

UncheckedException(RuntimeException)

CheckedException(必须处理)

2throws:

atmethodname

---Throwable:

class

---throws:

声明抛弃异常,定义方法名上,后面跟类名

---throw:

抛出异常对象,定义在方法里,后面跟异常对象

3try{}catch(Exceptione){}finally{}

System.exit(0)不执行finally

CheckedException:

try,catch但是finally可以省

RuntimeException:

try后面跟catchorfianlly

4finalfinalize()finally

5classMyExceptionextendsException

classMyExceptionextendsRuntimeException

52.为什么有Java的接口。

53.垃圾回收的优点和原理。

答:

垃圾回收:

首先一块内存在没有任何引用指向它时,它就是垃圾,虚拟机会启动系统线程,后台实时监测,当虚拟机空闲时,会自动回收这些垃圾。

54.在collection中,实现比较要实现什么样的接口?

55.串行化的注意事项以及如何实现串行化?

56.线程的基本概念、线程的基本状态以及状态之间的关系

答:

线程是进程里顺序的流程。

不能独立存在,线程共享数据。

57.线程的同步、如何实现线程的同步?

答:

线程的同步synchronized

58.Socket通信(TCP、UDP区别及Java实现方式)

答:

TCP是传输控制协议,可靠的,面向连接的,安全性高,实时传输慢。

UDP是用户数据包协议,不可靠的,面向无连接的,错序,丢包,实时传输快。

最近一个月在深圳找工作,收集了一些笔试题目,贴上来大家一起研究研究。

笔试试题摘录

1、SQLStatementAPI共有多少种,分别描述一下。

2、WAR、EAR分别代表什么,请简单描述。

EAR的部署文件是ear-jar.xml吗?

3、给出一个JUnit的文件,请问运行该文件的输出结果是什么?

4、UML的框图有多少种,请分别描述一下。

5、EJB的事务如何处理?

6、给出ANT的build.xml,请指出不带参数执行该文件时Target的执行顺序

7、CVS的创建、编译、删除的command分别是什么?

8、=与equal()的区别在哪?

intshortlong的区别是什么?

short("5")==short(5)?

int("5)==int(5)?

long("5)==long(5)?

int(5)==short(5)?

依此类推,具体题目不太记得了。

9、内聚与藕合的概念

10、给三个表结构,表内容、查询结果,要求根据结果写SQL语句

3表关系类似:

员工表,项目表,员工所负责项目表

查询结果:

所有项目资料,并在项目资料后显示负责人的详细资料

11、EJB,给三个SB,三个EB,要求写出包含回滚事务的代码

12、设计模式的概念,用一个你熟悉的设计模式举例说明设计模式带来的好处

13、JSP内置对象的生命周期及范围

14、写代码实现JAVA的“栈堆”

15、线程之间如何通讯

16、JSP1->Servlet->JSP2,JSP1中有一个FORM值,到了JSP2后,值变成了什么?

17、说一下你理解的重构,什么情况下你会考虑重构?

18、说一下你对“树”、“工作流”的理解

19、编写ANTbuild.xml生成WAR文件

20、编写JSPTaglib,包括TAB处理的JAVA文件,.tlb文件,JSP调用代码等。

21、写出客户端调用EJB的代码

题目仅凭回忆而写,不保证题目描述的准确,不对任何人学习的后果负责。

如你将其用于项目或考试,本人亦不负任何责任。

看了都知道,也马马虎虎全用过,但好像真很难回答

1至少2种

2不好回答

3true/false

4特难,就算我经常在用rose也回答不了

5事务处理,隔离,会滚?

6太低层次,只用工具

7图形cvs,不用命令

8=和equal大概是值相等和引用同一个,asc"5"!

=5,全部补相等,考asc码表?

9?

10selecta.name,b.name,c.nameformaaasa,bbasb,ccascwherea.id=c.idandb.id=c.id

11ejb正在研究

12不好一句话回答,工程,桥梁,代理,mvc,修饰随便几个吓唬吓唬他

13部指导

14先进后出

15县城不知道

16nnd,谁知道你servlet作了什么动作,再说,你拿到值不在jsp2显示/使用,狗屁问题

17代码的正规化,在代码重/又长又乱/的情况下使用

18树,放信息的咚咚,工作流=同事说是工作流程?

19编写ant那么重要?

配个笔记本,现场deplay

20jsptaglib/strutstablib,会使用,自己编taglib不会

21privatecom.MySessionHomegetHome()throwsNamingException{

return(com.MySessionHome)getContext().lookup(

com.MySessionHome.JNDI_NAME);

}

privateInitialContextgetContext()throwsNamingException{

Hashtableprops=newHashtable();

props.put(InitialContext.INITIAL_CONTEXT_FACTORY,

"org.jnp.interfaces.NamingContextFactory");

props.put(InitialContext.PROVIDER_URL,"jnp:

//127.0.0.1:

1099");

//Thisestablishesthesecurityforauthorization/authentication

//props.put(InitialContext.SECURITY_PRINCIPAL,"username");

//props.put(InitialContext.SECURITY_CREDENTIALS,"password");

InitialContextinitialContext=newInitialContext(props);

returninitialContext;

}

publicvoidtestBean()throwsSQLException{

try{

com.MySessionmyBean=getHome().create();

System.out.println(myBean.mySession("client"));

for(inti=0;i<10;i++){

System.out.println(myBean.mySession("client#"));

//myBean.count();

}

myBean=null;

for(inti=0;i<10;i++){

com.MySessionmyBean2=getHome().create();

System.out.println(myBean2.mySession("client *"));

//myBean.count();

}

//--------------------------------------

//Thisistheplaceyoumakeyourcalls.

//System.out.println(myBean.callYourMethod());

}catch(RemoteExceptione){

e.printStackTrace();

}catch(CreateExceptione){

e.printStackTrace();

}catch(NamingExceptione){

e.printStackTrace();

}

}

publicstaticvoidmain(String[]args)throwsSQLException{

Clienttest=newClient();

test.testBean();

}

}

笔试试题摘录

1、SQLStatementAPI共有多少种,分别描述一下。

//Driver,Connection,PreparedStatement,Statement,ResultSet,分别是数据库驱动,连接,事前声明,声明,结果集

2、WAR、EAR分别代表什么,请简单描述。

EAR的部署文件是ear-jar.xml吗?

//WAR是webapp打包文件,EAR是ejb打包文件,我觉得ear-jar.xml是描述文件,部署文件还是build.xml

3、给出一个JUnit的文件,请问运行该文件的输出结果是什么?

//

4、UML的框图有多少种,请分别描述一下。

//UML框图:

BusinessUseCase;UseCase;Activity;Sequence;Collaboration;Class;Statechart;Component;Deployment

5、EJB的事务如何处理?

//没接触

6、给出ANT的build.xml,请指出不带参数执行该文件时Target的执行顺序

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

当前位置:首页 > PPT模板 > 可爱清新

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

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