java的笔试题2

时间:2021-03-17 13:27:13 综合指导 我要投稿

java的笔试题2

  1. 是否可以继承String类?

java的笔试题2

  String类是final类,不可以继承 final是java中的一个关键字,可以用来修饰变量、方法和类。用关键词final修饰的域成为最终域。用关键词final修饰的变量一旦赋值,就不能改变,也称为修饰的标识为常量。如果一个类的域被关键字final所修饰,它的取值在程序的整个执行过程中将不会改变。 2.HashMap和Hashtable的区别?

  1.hashMap去掉了HashTable 的contains方法,但是加上了containsValue()和containsKey()方法。

  2.hashTable同步的,而HashMap是非同步的,效率上逼hashTable要高。

  这就意味着,虽然你可以不用采取任何特殊的`行为就可以在一个多线程的应用程序中用一个Hashtable,但你必须同样地为一个HashMap提供外同步。

  3.hashMap允许空键值,而hashTable不允许。

  3 .abstract class和interface有什么区别?

  class 是普通类

  abstract 是抽象类 包含纯虚函数(C++里)的类

  interface 是接口 让普通类可以继承他派生出有一定相同点的不同类

  1.相同点

  A. 两者都是抽象类,都不能实例化。

  B. interface实现类及abstrct class的子类都必须要实现已经声明的抽象方法。

  2. 不同点

  A. interface需要实现,要用implements,而abstract class需要继承,要用extends。

  B. 一个类可以实现多个interface,但一个类只能继承一个abstract class。

  C. interface强调特定功能的实现,而abstract class强调所属关系。

  D. 尽管interface实现类及abstrct class的子类都必须要实现相应的抽象方法,但实现的形式不同。interface中的每一个方法都是抽象方法,都只是声明的 (declaration, 没有方法体),实现类必须要实现。而abstract class的子类可以有选择地实现。

  4. swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上? 在switch(expr1)中,expr1只能是一个整数表达式或者枚举常量(更大字体),整数表达式可以是int基本类型或Integer包装类型,由于,byte,short,char都可以隐含转换为int,所以,这些类型以及这些类型的包装类型也是可以的。显然,long和String类型都不符合switch的语法规定,并且不能被隐式转换成int类型,所以,它们不能作用于swtich语句中。

  5. 编程题: 写一个Singleton出来。

  Java:

  public class Singleton {

  private static Singleton instance = null; public static synchronized Singleton getInstance() {

  //这个方法比上面有所改进,不用每次都进行生成对象,只是第一次

  //使用时生成实例,提高了效率!

  if (instance==null)

  instance=new Singleton();

  return instance;

  }

  } 6. JAVA SERVLET API中forward() 与redirect()的区别?

  forward是服务器请求资源,服务器直接访问目标地址的URL,

  前者仅是容器中控制权的转向,在客户端浏览器地址栏中不会显示出转向后的地址,他是不会改变Request的值

  forward 是转发,redirect是跳转。相同点都是为了两个组件之间的相互调用。forward的运行原理是服务器端内部的调用,所以它不需要通过浏览器来请求,所url地址不会改变,request的作用范围也没有中断过,它的作用域仍然有效。而redirect是重定向,是服务器发送消息告诉浏览器,让浏览器重新向新的地址请求,所以,url地址是会改变的,由于重新请求了,因而request也中断了,重新请求了,它的作用范围也失效了,放在 request里面的信息也随之而清空了。

  7. String 和StringBuffer的区别?

  String:字符串常量

  StringBuffer:字符创变量

  StringBuilder:字符创变量

  StringBuilder:线程非安全的

  StringBuffer:线程安全的

  String:

  是对象不是原始类型.

  为不可变对象,一旦被创建,就不能修改它的值.

  对于已经存在的String对象的修改都是重新创建一个新的对象,然后把新的值保存进去. String 是final类,即不能被继承.

  StringBuffer:

  是一个可变对象,当对他进行修改的时候不会像String那样重新建立对象

  它只能通过构造函数来建立,

  .String 对一串字符进行操作。不可变类。

  3.StringBuffer 也是对一串字符进行操作,但是可变类。

  8. 面向对象的三个基本特征

  .

  9.一条语句查询每个部门共有多少人

  前提:a 部门表 b 员工表

  a表字段(

  id --部门编号

  departmentName-部门名称

  )

  b表字段(

  id--部门编号

  employee- 员工名称

  )

  10. 有3张表,Student表、SC表和Course表

  Student表:学号(Sno)、姓名(Sname)、性别(Ssex)、年龄(Sage)和系名(Sdept)

  Course表:课程号(Cno)、课程名(Cname)和学分(Ccredit);

  SC表:学号(Sno)、课程号(Cno)和成绩(Grade)

  请使用SQL语句查询学生姓名及其课程总学分

  sum


【java的笔试题2】相关文章:

java英文面试笔试题09-04

java面试笔试题分享08-22

2017java笔试题及答案07-20

java程序员面试笔试试题08-22

2017年java中高级笔试面试题及答案07-26

给学弟学妹的求职笔面试总结09-02

Java找工作经验心得06-27

java面试最常见问题10-27

java招聘面试常见问题10-27

常见的Java多线程面试问题及解答07-05