java基础1.docx
- 文档编号:11333832
- 上传时间:2023-05-31
- 格式:DOCX
- 页数:6
- 大小:17.11KB
java基础1.docx
《java基础1.docx》由会员分享,可在线阅读,更多相关《java基础1.docx(6页珍藏版)》请在冰点文库上搜索。
java基础1
Java基础部分简答题
1、面向对象的特征有哪些方面多态性,封装,继承,抽象
2、String是最基本的数据类型吗?
不是。
String是一个类类型。
3、int和Integer有什么区别:
Integer是java为int提供封装类,int是个基本的数据类型。
4、String、StringBuffer、StringBuilder的区别都能定义数据串。
String:
定义的数据,不可以修改。
StringBuffer:
同步,但是效率低
StringBulder:
不同步,但是效率高
5、运行时异常与一般异常有何异同?
运行异常:
jvm自己捕捉。
一般异常:
要程序人自己去try,catch。
6、说出ArrayList,Vector,LinkedList的存储性能和特性
7、Collection和Collections的区别
Collection是集合的上级接口,继承
与他的接口主要有set和list.
Collections是针对集合类的一个帮助类,他提供一系列静态实现对各种集合的搜索,排序,线程安全化等操作。
8、&和&&的区别。
位与运算符(二进制)
&:
两边都要执行。
&&:
可以执行第一个。
9、HashMap和Hashtable的区别。
Hashmap:
HashMap是Hashtable的轻量级实现(非线程安全的实现),他们都完成了Map接口,主要区别在于HashMap允许空(null)键值(key),由于非线程安全,效率上可能高于Hashtable。
10、final,finally,finalize的区别。
Final:
是定义常量时,必须附初值。
不能被重写
Finally:
是异常处理中,绝对能执行的代码,在return之前执行。
Finalize:
是垃圾回收时,是释放空间,人为调用无效。
11、Overload和Override的区别。
Overload的方法是否可以改变返回值的类型?
可以,重载和返回值无关,overloaded是方法名同,但是参数表不一样,overrid是子类对父类的覆盖,子类对父类有新的实现
12、error和exception有什么区别?
同步和异步有何异同,在什么情况下分别使用他们?
举例说明。
Error是恢复不是不可能的严重问题,exception是表示设计或实现问题。
13、abstractclass和interface有什么区别?
Abstract只是声明方法但是不实现,interface是abstract类的变体。
14、GC是什么?
为什么要有GC?
是,垃圾回收站。
Gc是为了释放内存空间。
15、shorts1=1;s1=s1+1;有什么错?
有错,s1是short型,s1+1整型
shorts1=1;s1+=1;有什么错?
对的。
16、Math.round(11.5)等於多少?
Math.round(-11.5)等於多少?
12,-11
17、Strings=newString("xyz");创建了几个StringObject?
创建了2个对象。
18、List,Set,Map是否继承自Collection接口?
19、数组有没有length()这个方法?
数组没有length()这个方法:
String的有
20、Set里的元素是不能重复的,那么用什么方法来区分重复与否呢?
是用==还是equals()?
它们有何区别?
构造器Constructor是否可被override?
21、是否可以继承String类?
22、try{}里有一个return语句,那么紧跟在这个try后的finally{}里的code会不会被执行,什么时候被执行,在return前还是后?
23、char型变量中能不能存贮一个中文汉字?
为什么?
可以,存储汉字需要2个字节,而char正好有2个字节。
24、java中会存在内存泄漏吗,请简单描述。
长生命周期的对象持有短生命周期对象的引用,会有内存泄漏。
虽然短生命周期对象用不到,但是长生命周期对象持有短生命周期的对象的引用,不能被回收。
25、垃圾回收器的基本原理是什么?
垃圾回收器可以马上回收内存吗?
有什么办法主动通知虚拟机进行垃圾回收?
Jvm处理的方式处理垃圾,不可以,runtime.getruntime().gc(),System.gc().
26、什么是java序列化,如何实现java序列化?
序列化是是一种处理对象流的机制。
保存对象的状态。
使用Serializable接口
Java基础部分找错题
1.
abstractclassName{
privateStringname;
publicabstractbooleanisStupidName(Stringname){}
}
大侠们,这有何错误?
类型不同。
Abstract方法没方法体
2.
publicclassSomething{
voiddoSomething(){
(final)privateStrings="";
intl=s.length();
局部变量只能用finnal修饰。
}
}
有错吗?
怎么改?
3.
abstractclassSomething{
privateabstractStringdoSomething();
}private是非法的。
有错吗?
怎么改?
4.
publicclassSomething{
publicintaddOne(finalintx){
return++x;
Final不能改变它的值。
}
}
有错吗?
怎么改?
5.
publicclassSomething{
publicstaticvoidmain(String[]args){
Othero=newOther();
newSomething().addOne(o);
}
publicvoidaddOne(finalOthero){
o.i++;
}
}
classOther{
publicinti;
}
这有错吗?
6.
classSomething{
inti;
publicvoiddoSomething(){
System.out.println("i="+i);
}
}
有什么错呢?
正确。
7.classSomething{
finalinti;
publicvoiddoSomething(){
System.out.println("i="+i);
}finalinti=1;
}
有错吗?
怎么改?
8.
publicclassSomething{
publicstaticvoidmain(String[]args){
Somethings=newSomething();
System.out.println("s.doSomething()returns"+doSomething());(s.doSomething())
}
publicStringdoSomething(){
return"Dosomething...";
}
}有错吗?
怎么改?
9.
此处,Something类的文件名叫OtherThing.java
classSomething{
(public)privatestaticvoidmain(String[]something_to_do){
System.out.println("Dosomething...");
}
}
有错吗?
怎么改?
文件类型要和主方法名相同。
10.
interface A{
intx=0;
}
classB{
intx=1;
}
classCextendsBimplementsA{
publicvoidpX(){
System.out.println(x);
}
publicstaticvoidmain(String[]args){
newC().pX();
}
}
有错吗?
怎么改?
System.out.println(x);中X不明确是谁的常量。
父类必须要有super();System.out.println(A.x);
Java基础部分编程题
1.字符串的操作:
编写一个程序,实现字符串的反转,如:
输入abc,输出cba
2.写一个单例模式
3.现在输入n个数字,以逗号,分开;
然后可选择升或者降序排序
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 基础