java期末考试试卷及答案⽂库_JAVA期末考试试题及答java期末基础试题
案.docx
x[j+1])
{w=x[j];x[j]=x[j+1];x[j+1]=w;}
/*if(i==1||i==2)ShowArray(x);if(i==2)break;*/
}
}
publicstaticvoidShowArray(intb[])
{
for(inti=0;iy;System.out.println(xy==+flag);flag=zw;System.out.println(zw==+flag);
}
}
四、问答题:(每题5分,)
1.Java的接⼝和C++的虚类的相同和不同处。
由于Java不⽀持多继承,⽽有可能某个类或对象要使⽤分别在⼏个类或对象⾥⾯的⽅法或属性,现有的单继承机制就不能满⾜要求。与继
承相⽐,接⼝有更⾼的灵活性,因为接⼝中没有任何实现代码。当⼀个类实现了接⼝以后,该类要实现接⼝⾥
⾯所有的⽅法和属性,并且接⼝⾥⾯的属性在默认状态下⾯都是publicstatic,所有⽅法默认情况下是public.⼀个类可以实现多个接⼝。
2.垃圾回收的优点和原理。并考虑2种回收机制。
Java语⾔中⼀个显著的特点就是引⼊了垃圾回收机制,使c++程序员最头疼的存管理的问题迎刃⽽解,它使得Java程序员在编写程序的时
候不再需要考虑存管理。由于有个垃圾回收机制,Java中的对象不再有作⽤域的概念,只有对象的引⽤才有作⽤域。垃圾回收可以有
效的防⽌存泄露,有效的使⽤可以使⽤的存。垃圾回收器通常是作为⼀个单独的低级别的线程运⾏,不可预知的情况下对存堆中已经死亡
的或者长时间没有使⽤的对象进⾏清楚和回收,程序员不能实时的调⽤垃圾回收器对某个

对象或所有对象进⾏垃圾回收。回收机制有分代复制垃圾回收和标记垃圾回收,增量垃圾回收。
3,谈谈final,finally,finalize的区别。
Final-修饰符(关键字)如果⼀个类被声明为final,意味着它不能再派⽣出新的⼦类,不能作为⽗类被继承。因此⼀个类不能既被声明为
abstract的,⼜被声明为final的。将变量或⽅法声明为final,可以保证它们在使⽤中不被改变。被声明为final的变量必须在声明时给定
初值,⽽在以后的引⽤中只能读取,不可修改。被声明为final的⽅法也同样只能使⽤,不能重载。
Finally-再异常处理时提供finally块来执⾏任何清除操作。如果抛出⼀个异常,那么相匹配的catch⼦句就会执⾏,然后控制就会进⼊
finally块(如果有的话)。
Finalize-⽅法名。Java技术允许使⽤finalize()⽅法在垃圾收集器将对象从存中清除出去之前做必要的清理⼯作。这个⽅法是由垃圾收集
器在确定这个对象没有被引⽤时对这个对象调⽤的。它是在Object类中定义的,因此所有的类都继承了它。⼦类覆盖finalize()⽅法以整
理系统资源或者执⾏其他清理⼯作。finalize()⽅法是在垃圾收集器删除对象之前对这个对象调⽤的。
4,数组有没有length()这个⽅法?String有没有length()这个⽅法?举例说明使⽤⽅法?
数组没有length()这个⽅法,有length的属性。
String有有length()这个⽅法。
5.Java中的异常处理机制的简单原理和应⽤。
当JAVA程序违反了JAVA的语义规则时,JAVA虚拟机就会将发⽣的错误表⽰为⼀个异常。违反语义规则包括2种情况。⼀种是JAVA
类库置的语义检查。例如数组下标越界,会引发IndexOutOfBoundsException;访问null的对象时会引发
NullPointerException.另⼀种情况就是JAVA允许程序员扩展这种语义检查,程序员可以创建⾃⼰的异常,并⾃由选择在何时⽤throw
关键字引发异常。所有的异常都是java.lang.Thowable的⼦类。
五、程序设计:(每题11分,共33分)
1、编程:编写⼀个截取字符串的函数,输⼊为⼀个字符串和字节数,输出为按字节
截取的字符串。但是要保证汉字不被截半个,如我ABC4,应该截为我AB,输⼊我ABC汉DEF,6,应该输出为我ABC⽽不
是我ABC+汉的半个。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/97.html