欢迎来到天天文库
浏览记录
ID:56199682
大小:64.50 KB
页数:5页
时间:2020-03-20
《颠峰软件JAVA初级试题.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、Java开发工程师面试试题(一)(JAVA基础知识)1、简述final,finally,finalize的区别。final:如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为abstract的,又被声明为final的。finally:在异常处理时提供finally块来执行任何清除操作。如果抛出一个异常,那么相匹配的catch子句就会执行,最后不管有没有发生异常,控制都将进入finally块(如果有的话),如用在数据库连接时用来最后关闭连接,避免在数据库连接发生异常后资源一直被占用的情况。finalize:Java技术允许使用final
2、ize()方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作。这个方法是由垃圾收集器在确定这个对象没有被引用时对这个对象调用的。它是在Object类中定义的,因此所有的类都继承了它。子类覆盖finalize()方法以整理系统资源或者执行其他清理工作。2、swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上?switch(expr1)中,expr1是一个整数表达式。因此传递给 switch 和 case 语句的参数应该是 int、 short、 char 或者 byte。long,string 都不能作用于swtich。 3、error和excep
3、tion有什么区别?Exceptions1.可以是可被控制(checked)或不可控制的(unchecked)2.表示一个由程序员导致的错误3.应该在应用程序级被处理Errors1.总是不可控制的(unchecked)2.经常用来用于表示系统错误或低层资源的错误3.如何可能的话,应该在系统级被捕捉4、try{}里有一个return语句,那么紧跟在这个try后的finally{}里的code会不会被执行?为什么?会执行,在return前执.在异常处理时提供finally块来执行任何清除操作。5、简述abstractclass和interface有什么区别?声明方法的存在而不去实现它的类被叫
4、做抽象类(abstractclass),它用于要创建一个体现某些基本行为的类,并为该类声明方法,但不能在该类中实现该类的情况。不能创建abstract类的实例。然而可以创建一个变量,其类型是一个抽象类,并让它指向具体子类的一个实例。不能有抽象构造函数或抽象静态方法。Abstract类的子类为它们父类中的所有抽象方法提供实现,否则它们也是抽象类为。取而代之,在子类中实现该方法。知道其行为的其它类可以在类中实现这些方法。接口(interface)是抽象类的变体。在接口中,所有方法都是抽象的。多继承性可通过实现这样的接口而获得。接口中的所有方法都是抽象的,没有一个有程序体。接口只可以定义sta
5、ticfinal成员变量。接口的实现与子类相似,除了该实现类不能从接口定义中继承行为。当类实现特殊接口时,它定义(即将程序体给予)所有这种接口的方法。然后,它可以在实现了该接口的类的任何对象上调用接口的方法。由于有抽象类,它允许使用接口名作为引用变量的类型。通常的动态联编将生效。引用可以转换到接口类型或从接口类型转换,instanceof运算符可以用来决定某对象的类是否实现了接口。1、简述MVC模式。模型-视图-控制器(MVC)是80年代Smalltalk-80出现的一种软件设计模式,现在已经被广泛的使用。1、模型(Model)模型是应用程序的主体部分。模型表示业务数据,或者业务逻辑.2
6、、视图(View)视图是应用程序中用户界面相关的部分,是用户看到并与之交互的界面。3、控制器(controller)控制器工作就是根据用户的输入,控制用户界面数据显示和更新model对象状态。MVC式的出现不仅实现了功能模块和显示模块的分离,同时它还提高了应用系统的可维护性、可扩展性、可移植性和组件的可复用性2、简述forward和redirect的区别forward是服务器内部重定向,程序收到请求后重新定向到另一个程序,客户机并不知道;redirect则是服务器收到请求后发送一个状态头给客户,客户将再请求一次,这里多了两次网络通信的来往。这时页面收到的request不是从浏览器直接发来
7、了,可能己经放了数据.(编程题)1、Java编程,打印昨天的当前时刻importjava.util.Calendar;publicclassTest{publicstaticvoidmain(String[]args){Calendarc=Calendar.getInstance();intyear=c.get(Calendar.YEAR);intmonth=c.get(Calendar.MONTH)+1;intdate=c.get
此文档下载收益归作者所有