JAVA面试集.doc

上传人:b****1 文档编号:231063 上传时间:2022-10-07 格式:DOC 页数:19 大小:77KB
下载 相关 举报
JAVA面试集.doc_第1页
第1页 / 共19页
JAVA面试集.doc_第2页
第2页 / 共19页
JAVA面试集.doc_第3页
第3页 / 共19页
JAVA面试集.doc_第4页
第4页 / 共19页
JAVA面试集.doc_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

JAVA面试集.doc

《JAVA面试集.doc》由会员分享,可在线阅读,更多相关《JAVA面试集.doc(19页珍藏版)》请在冰豆网上搜索。

JAVA面试集.doc

JAVA面试集

设计一个能随机产生100个大写英文字母的方法,在该方法中统计产生了多少元音字母,并输出这个数字。

(选做)Math.random()方法可以随机产生0~1之间的double类型的小数。

JAVA多线程编程。

用JAVA写一个多线程程序(一般掌握) 

Java的通信编程,编程题(或问答),用JAVASOCKET编程,读服务器几个字符,再写入本地显示(一般掌握) 

用JAVA实现数据库查询,这是一道编程题。

(重点掌握) 

输入一串字符,输出时倒转过来。

输入:

Hello!

Thisisatesttext.

输出:

.texttestaisThis!

Hello

 

问答题

 Java中异常处理机制 

使用try,catch和finally。

把有可能产生违例的代码放到try的语句块中,一旦这些代码产生了违例,就会执行相应的catch语句块中的语句,finally语句块的代码,不管有产生违例都会执行的。

 

事件机制

事件监听器接口,定义了事件的处理方法。

事件源:

产生事件的组件

事件源对自己感兴趣的事件进行注册(注册监听器),然后事件源一旦产生事件,就会调用相应的事件处理方法,执行相应的代码。

 

 

JAVA中的多形与继承,可出编程,选择题。

 抽象类与接口,接口的好处是将实现与表现分离。

 

声明方法的存在而不去实现它的类被叫做抽象类(abstract class),它用于要创建一个体现某些基本行为的类,声明方法。

不能创建abstract 类的实例。

接口(interface)是抽象类的变体。

在接口中,所有方法都是抽象的。

没有一个有程序体。

接口只可以定义static final成员变量。

一个类实现接口要实现接口的所有方法。

STRING与STRINGBUFFER的区别。

STRING的长度是不可变的,STRINGBUFFER的长度是可变的。

如果你对字符串中的内容经常进行操作,特别是内容要修改时,那么使用StringBuffer,如果最后需要String,那么使用StringBuffer的toString()方法

 

谈谈final,finally的区别。

 

final—(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。

将变量或方法声明为final,可以保证它们在使用中不被改变。

被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。

被声明为final的方法也同样只能使用,不能重载。

finally—异常处理时提供 finally 块来执行任何清除操作。

如果抛出一个异常,那么相匹配的 catch 子句就会执行,然后控制就会进入 finally 块(如果有的话)。

Collection和Collections的区别。

你千万别说一个是单数一个是复数。

 

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

Collection是个java.util下的接口,它是各种集合结构的父接口。

GC是什么?

为什么要有GC?

GarbageCollection

GC是垃圾收集器。

Java 程序员不用担心内存管理,因为垃圾收集器会自动进行管理。

 

Math.round(11.5)等於多少?

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

Math.round(11.5)返回12,Math.round(-11.5)返回-11;

Java有没有goto?

Goto—java中的保留字,现在没有在java中使用。

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

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

 

数组没有length()这个方法,有length的属性。

String有有length()这个方法。

Overload和Override的区别。

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

 

如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写(Overriding)。

子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被“屏蔽”了。

如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载(Overloading)。

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

给我一个你最常见到的runtimeexception。

如果你这个答不出来,面试的人会认为你没有实际编程经验。

IndexOutOfBoundsException

ClassCastException

 

error和exception有什么区别?

 

error 表示一种严重问题。

比如说内存溢出。

不可能指望程序能处理这样的情况。

exception 表示可以处理的问题。

 接口是否可继承接口?

可以

 

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

Start()

 

构造器Constructor是否可被override?

构造器Constructor不能被继承,因此不能重写Override,但可以被重载Overload

 

是否可以继承String类?

String类是final类故不可以继承。

 

swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上?

 

switch(expr1)中,expr1是一个整数表达式。

因此传递给 switch 和 case 语句的参数应该是 int、 short、 char 或者 byte。

long,string 都不能作用于swtich。

数组和vector的区别

数组不可以随时改变大小,可以保存引用类型的数据和基本类型的数据。

Vector可以随时改变大小,只可以保存引用类型的数据。

 

JAVA类实现序例化的方法是实现java.io.Serializable接口

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

答:

区别如下:

作用域当前类同一package子孙类其他package

public√√√√

protected√√√×

friendly√√××

private√×××

不写时默认为friendly

ArrayList和Vector的区别

 

答:

就ArrayList与Vector主要从二方面来说.

一.同步性:

Vector是线程安全的,也就是说是同步的,而ArrayList是线程序不安全的,不是同步的

二.数据增长:

当需要增长时,Vector默认增长为原来一培,而ArrayList却是原来的一半

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

为什么?

答:

是能够定义成为一个中文的,因为java中以unicode编码,一个char占16个字节,所以放一个中文是没问题的

多线程有几种实现方法,都是什么?

同步实现方法,都是什么?

答:

多线程有两种实现方法,分别是继承Thread类与实现Runnable接口

同步的实现方面synchronized

继承时候类的执行顺序问题,一般都是选择题,问你将会打印出什么?

答:

父类:

packagetest;

publicclassFatherClass

{

publicFatherClass()

{

System.out.println("FatherClassCreate");

}

}

子类:

packagetest;

importtest.FatherClass;

publicclassChildClassextendsFatherClass

{

publicChildClass()

{

System.out.println("ChildClassCreate");

}

publicstaticvoidmain(String[]args)

{

FatherClassfc=newFatherClass();

ChildClasscc=newChildClass();

}

}

输出结果:

C:

\>javatest.ChildClass

FatherClassCreate

FatherClassCreate

ChildClassCreate

 

6、内部类的实现方式?

答:

示例代码如下:

packagetest;

publicclassOuterClass

{

privateclassInterClass

{

publicInterClass()

{

System.out.println("InterClassCreate");

}

}

publicOuterClass()

{

InterClassic=newInterClass();

System.out.println("OuterClassCreate");

}

publicstaticvoidmain(String[]args)

{

OuterClassoc=newOuterClass();

}

}

输出结果:

C:

\>javatest/OuterClass

InterClassCreate

OuterClassCreate

float型floatf=3.4是否正确?

答:

不正确。

精度不准确,应该用强制类型转换,如下所示:

floatf=(float)3.4

介绍JAVA中的CollectionFrameWork(包括如何写自己的数据结构)?

答:

CollectionFrameWork如下:

Collection

├List

│├LinkedList

│├ArrayList

│└Vector

│ └Stack

└Set

Map

├Hashtable

├HashMap

└WeakHashMap

Collection是最基本的集合接口,一个Collection代表一组Object,即Collection的元素(Elements)

Map提供key到value的映射

从性能上看,下面的代码有何不妥,为什么?

 

classA

{

publicstaticvoidmain(String[]args)

 

{

Stringstr="";

for(inti=0;i<100;i++)

{

str+=(char)i;

}

System.out.println(str);

}

}

一、Java基础知识

1.Java有那些基本数据类型,String是不是基本数据类型,他们有何区别。

2.字符串的操作:

写一个方法,实现字符串的反转,如:

输入abc,输出cba

写一个方法,实现字符串的替换,如:

输入bbbwlirbbb,输出bbbhhtccc。

3.数据类型之间的转换

如何将数值型字符转换为数字(Integer,Double)

如何将数字转换为字符

如何取小数点前两位,

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

当前位置:首页 > 考试认证 > IT认证

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

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