深圳海邻科信息技术有限公司java面试

1,抽象类和接口的区别
抽象类:
a) 抽象类中含有抽象方法(没有方法体的方法)
b) 抽象类不可以直接实例化
c) 抽象类需要靠子类实现其抽象方法
d) 抽象类 对象名 = new 子类构造方法
(父类声明指向子类对象)
接口:
a) 接口中:只有常量和抽象方法
b) 接口不可以实例化
c) 接口需要靠类来实现其方法
d) 接口 对象名 = new 类的构造方法
(父类声明指向子类对象)
c) 一个类可以实现多个接口,接口之间也可以实现多继承

声明方法的存在而不去实现它的类被叫做抽象类(abstract class),它用于要创建一个体现某些基本行为的类,并为该类声明方法,但不能在该类中实现该类的情况。不能创建abstract 类的实例。然而可以创建一个变量,其类型是一个抽象类,并让它指向具体子类的一个实例。不能有抽象构造函数或抽象静态方法。Abstract 类的子类为它们父类中的所有抽象方法提供实现,否则它们也是抽象类为。取而代之,在子类中实现该方法。知道其行为的其它类可以在类中实现这些方法。
 接口(interface)是抽象类的变体。在接口中,所有方法都是抽象的。多继承性可通过实现这样的接口而获得。接口中的所有方法都是抽象的,没有一个有程序体。接口只可以定义static final成员变量。接口的实现与子类相似,除了该实现类不能从接口定义中继承行为。当类实现特殊接口时,它定义(即将程序体给予)所有这种接口的方法。然后,它可以在实现了该接口的类的任何对象上调用接口的方法。由于有抽象类,它允许使用接口名作为引用变量的类型。通常的动态联编将生效。引用可以转换到接口类型或从接口类型转换,instanceof 运算符可以用来决定某对象的类是否实现了接口。

2,HashTable的原理,并说出HashMap与Hashtable的区别
Hashtable 也是一个散列表,它存储的内容是键值对(key-value)映射

3,什么是web容器
web容器是一种服务程序,就是为应用服务器组(如jsp,servlet等)提供一个运行环境,使JSP、servlet直接跟容器中的环境变量接口交互,不必关注其他系统问题。主要有web服务器来实现。
例如:tomcat、WebLogic,WebSphere等。该容器提供的接口严格遵守j2ee规范的web application标准。我们把遵循以上标准的web服务就叫做j2ee中的web容器。

4,xml的解析方法
DOM SAX DOM4j JDOM
5,什么是webservice?
Web service是一个平台独立的,低耦合的,自包含的、基于可编程的web的应用程序,可使用开放的XML(标准通用标记语言下的一个子集)标准来描述、发布、发现、协调和配置这些应用程序,用于开发分布式的互操作的应用程序。
6,多线程有几种实现方法,都是什么?同步有几种实现方法,都是什么?

7,jsp中动态INCLUDE与静态INCLUDE的区别?
动态INCLUDE用jsp:include动作实现
<jsp:include page="included.jsp" flush="true" />
它总是会检查所含文件中的变化,适合用于包含动态页面,并且可以带参数
<%@ include file="included.htm" %>
静态INCLUDE用include伪码实现,定不会检查所含文件的变化,适用于包含静态页面

8,指出下面程序的运行结果?1a2b2b 当有静态代码块时,先执行静态代码块,在执行构造方法,如果static代码块有多个,JVM将按照它们在类中出现的先后顺序依次执行它们,每个代码块只会被执行一次。
class A{
static{
System.out.print("1");
}
public A(){
System.out.print("2");
}
}
class B extends A{
static{
System.out.print("a");
}
public B(){
System.out.print("b");
}
}
public class Hello {
public static void main(String[] args) {
A ab=new B();
ab=new B();
}
}
9,删除表的重复记录?
delete from news where (select * from news where title in (select title from news group by title having count(title)>1))


10,from tablea & truncate table tablea的区别?

SQLServer中delete from tablea & truncate table tablea的区别有哪些?
两者都可以用来删除表中所有的记录。
区别在于:truncate是DDL操作,它移动HWK,使HWK值为0,不需要 rollback segment .而Delete是DML操作需要rollback segment 且花费较长时间.

posted on 2016-11-02 16:47  让代码飞  阅读(188)  评论(0)    收藏  举报

导航

一款免费在线思维导图工具推荐:https://www.processon.com/i/593e9a29e4b0898669edaf7f?full_name=python