- 浏览: 43988 次
- 性别:
- 来自: 北京
文章分类
最新评论
[size=large][/size]17、abstract class 和 interface 有什么区别?
声明方法的存在而不去实现它的类被叫做抽象类(abstract class),它用于要创建一个体现某
些基本行为的类,并为该类声明方法,但不能在该类中实现该类的情况。不能创建 abstract 类
的实例。然而可以创建一个变量,其类型是一个抽象类,并让它指向具体子类的一个实例。
不能有抽象构造函数或抽象静态方法。Abstract 类的子类为它们父类中的所有抽象方法提供
实现,否则它们也是抽象类为。取而代之,在子类中实现该方法。知道其行为的其它类可以
在类中实现这些方法。
接口(interface)是抽象类的变体。在接口中,所有方法都是抽象的。多继承性可通过实现
这样的接口而获得。接口中的所有方法都是抽象的,没有一个有程序体。接口只可以定义
static final 成员变量。接口的实现与子类相似,除了该实现类不能从接口定义中继承行为。
当类实现特殊接口时,它定义(即将程序体给予)所有这种接口的方法。然后,它可以在实
现了该接口的类的任何对象上调用接口的方法。由于有抽象类,它允许使用接口名作为引用
变量的类型。通常的动态联编将生效。引用可以转换到接口类型或从接口类型转换,
instanceof 运算符可以用来决定某对象的类是否实现了接口。
18、heap 和 stack 有什么区别。
栈是一种线形集合,其添加和删除元素的操作应在同一段完成。栈按照后进先出的方式进行
处理。
堆是栈的一个组成元素
19、forward 和 redirect 的区别
forward 是服务器请求资源,服务器直接访问目标地址的 URL,把那个 URL 的响应内容读
取过来,然后把这些内容再发给浏览器,浏览器根本不知道服务器发送的内容是从哪儿来的,
所以它的地址栏中还是原来的地址。
redir
ect 就是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址,一般来说浏
览器会用刚才请求的所有参数重新请求,所以 session,request 参数都可以获取。
20、EJB 与 Java BEAN 的区别?
Java Bean 是可复用的组件,对 Java Bean 并没有严格的规范,理论上讲,任何一个 Java 类
都可以是一个 Bean。但通常情况下,由于 Java Bean 是被容器所创建(如 Tomcat)的,所
以 Java Bean 应具有一个无参的构造器,另外,通常 Java Bean 还要实现 Serializable 接口用
于实现 Bean 的持久性。Java Bean 实际上相当于微软 COM 模型中的本地进程内 COM 组件,
它是不能被跨进程访问的。Enterprise Java Bean 相当于 DCOM,即分布式组件。它是基于
Java 的远程方法调用(RMI)技术的,所以 EJB 可以被远程访问(跨进程、跨计算机)。但
EJB 必须被布署在诸如 Webspere、WebLogic 这样的容器中,EJB 客户从不直接访问真正的
EJB 组件,而是通过其容器访问。EJB 容器是 EJB 组件的代理, EJB 组件由容器所创建和
管理。客户通过容器来访问真正的 EJB 组件。
21、Static Nested Class 和 Inner Class 的不同。
Static Nested Class 是被声明为静态(static)的内部类,它可以不依赖于外部类实例被实例
化。而通常的内部类需要在外部类实例化后才能实例化。
22、JSP 中动态 INCLUDE 与静态 INCLUDE 的区别?
动态 INCLUDE 用 jsp:include 动作实现 <!--include file="included.htm"-->
23、什么时候用 assert。
assertion (断言)在软件开发中是一
种常用的调试方式,很多开发语言中都支持这种机制。在
实现中,assertion 就是在程序中的一条语句,它对一个 boolean 表达式进行检查,一个正确
程序必须保证这个 boolean 表达式的值为 true;如果该值为 false,说明程序已经处于不正确
的状态下,系统将给出警告或退出。一般来说,assertion 用于保证程序最基本、关键的正确
性。assertion 检查通常在开发和测试时开启。为了提高性能,在软件发布后,assertion 检查
通常是关闭的。
24、GC 是什么? 为什么要有 GC?
GC 是垃圾收集的意思(Gabage Collection),内存处理是编程人员容易出现问题的地方,
忘记或者错误的内存回收会导致程序或系统的不稳定甚至崩溃,Java 提供的 GC 功能可以自
动监测对象是否超过作用域从而达到自动回收内存的目的,Java 语言没有提供释放已分配内
存的显示操作方法。
声明方法的存在而不去实现它的类被叫做抽象类(abstract class),它用于要创建一个体现某
些基本行为的类,并为该类声明方法,但不能在该类中实现该类的情况。不能创建 abstract 类
的实例。然而可以创建一个变量,其类型是一个抽象类,并让它指向具体子类的一个实例。
不能有抽象构造函数或抽象静态方法。Abstract 类的子类为它们父类中的所有抽象方法提供
实现,否则它们也是抽象类为。取而代之,在子类中实现该方法。知道其行为的其它类可以
在类中实现这些方法。
接口(interface)是抽象类的变体。在接口中,所有方法都是抽象的。多继承性可通过实现
这样的接口而获得。接口中的所有方法都是抽象的,没有一个有程序体。接口只可以定义
static final 成员变量。接口的实现与子类相似,除了该实现类不能从接口定义中继承行为。
当类实现特殊接口时,它定义(即将程序体给予)所有这种接口的方法。然后,它可以在实
现了该接口的类的任何对象上调用接口的方法。由于有抽象类,它允许使用接口名作为引用
变量的类型。通常的动态联编将生效。引用可以转换到接口类型或从接口类型转换,
instanceof 运算符可以用来决定某对象的类是否实现了接口。
18、heap 和 stack 有什么区别。
栈是一种线形集合,其添加和删除元素的操作应在同一段完成。栈按照后进先出的方式进行
处理。
堆是栈的一个组成元素
19、forward 和 redirect 的区别
forward 是服务器请求资源,服务器直接访问目标地址的 URL,把那个 URL 的响应内容读
取过来,然后把这些内容再发给浏览器,浏览器根本不知道服务器发送的内容是从哪儿来的,
所以它的地址栏中还是原来的地址。
redir
ect 就是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址,一般来说浏
览器会用刚才请求的所有参数重新请求,所以 session,request 参数都可以获取。
20、EJB 与 Java BEAN 的区别?
Java Bean 是可复用的组件,对 Java Bean 并没有严格的规范,理论上讲,任何一个 Java 类
都可以是一个 Bean。但通常情况下,由于 Java Bean 是被容器所创建(如 Tomcat)的,所
以 Java Bean 应具有一个无参的构造器,另外,通常 Java Bean 还要实现 Serializable 接口用
于实现 Bean 的持久性。Java Bean 实际上相当于微软 COM 模型中的本地进程内 COM 组件,
它是不能被跨进程访问的。Enterprise Java Bean 相当于 DCOM,即分布式组件。它是基于
Java 的远程方法调用(RMI)技术的,所以 EJB 可以被远程访问(跨进程、跨计算机)。但
EJB 必须被布署在诸如 Webspere、WebLogic 这样的容器中,EJB 客户从不直接访问真正的
EJB 组件,而是通过其容器访问。EJB 容器是 EJB 组件的代理, EJB 组件由容器所创建和
管理。客户通过容器来访问真正的 EJB 组件。
21、Static Nested Class 和 Inner Class 的不同。
Static Nested Class 是被声明为静态(static)的内部类,它可以不依赖于外部类实例被实例
化。而通常的内部类需要在外部类实例化后才能实例化。
22、JSP 中动态 INCLUDE 与静态 INCLUDE 的区别?
动态 INCLUDE 用 jsp:include 动作实现 <!--include file="included.htm"-->
23、什么时候用 assert。
assertion (断言)在软件开发中是一
种常用的调试方式,很多开发语言中都支持这种机制。在
实现中,assertion 就是在程序中的一条语句,它对一个 boolean 表达式进行检查,一个正确
程序必须保证这个 boolean 表达式的值为 true;如果该值为 false,说明程序已经处于不正确
的状态下,系统将给出警告或退出。一般来说,assertion 用于保证程序最基本、关键的正确
性。assertion 检查通常在开发和测试时开启。为了提高性能,在软件发布后,assertion 检查
通常是关闭的。
24、GC 是什么? 为什么要有 GC?
GC 是垃圾收集的意思(Gabage Collection),内存处理是编程人员容易出现问题的地方,
忘记或者错误的内存回收会导致程序或系统的不稳定甚至崩溃,Java 提供的 GC 功能可以自
动监测对象是否超过作用域从而达到自动回收内存的目的,Java 语言没有提供释放已分配内
存的显示操作方法。
发表评论
-
Java程序员面试题集合(15)
2011-02-26 17:20 709118、LINUX 下线程,GDI 类的解释。 LINUX 实 ... -
Java程序员面试题集合(14)
2011-02-26 17:19 718114、jsp 有哪些动作?作 ... -
Java程序员面试题集合(13)
2011-02-26 17:18 80603、垃圾回收器的基本原理是什么?垃圾回收器可以马上回收内存吗 ... -
Java程序员面试题集合(12)
2011-02-26 17:18 59597、一个".java"源 ... -
Java程序员面试题集合(11)
2011-02-26 17:17 84894、排序都有哪几种方法?请列举。用 Java 实现一个快速排 ... -
Java程序员面试题集合(10)
2011-02-26 17:16 61490、说说在 weblogic 中开 ... -
Java程序员面试题集合(9)
2011-02-26 17:14 69380、如何给 weblogic 指定大小的内存? 在启动 We ... -
Java程序员面试题集合(8)
2011-02-26 17:11 66371、简述 synchronized 和 Ja ... -
Java程序员面试题集合(7)
2011-02-26 17:10 70058、线程的基本概念、线程的基本状态以及状态之间的关系线程指在 ... -
Java程序员面试题集合(6)
2011-02-26 17:09 70141、是否可以继承 String ... -
Java程序员面试题集合(5)
2011-02-26 17:07 46025、short s1 = 1; s1 = s1 + 1; ... -
Java程序员面试题集合(2)
2011-02-26 16:47 6025、Java运行时异常与一 ... -
Java程序员面试题集合(1)
2011-02-26 16:46 5491.面向对象的特征有哪 ...
相关推荐
### Java程序员面试题集合知识点详解 #### 一、面向对象的四大特征 1. **抽象** 抽象是面向对象编程中的一个重要概念,它指的是在设计阶段仅考虑问题的关键部分,忽略不相关的细节。抽象可以分为两类: - **...
java 面试题 面试 集合 程序员面试
以上仅是 Java 程序员面试中可能涉及的一部分知识点,实际面试中还会有更多关于设计模式、JVM 内存模型、数据库操作、网络编程等方面的问题。掌握这些基础和进阶知识对于成为一名优秀的 Java 开发者至关重要。
Java程序员面试题是一个涵盖广泛领域的主题,涉及到Java基础、Web开发、设计模式、数据库和框架等多个方面。以下是对这些文件内容的详细解析: 1. **Model1-CoreJava.doc & Model1-CoreJava-answer.doc**: 这部分...
《Java程序员面试宝典》列举了各大IT公司的面试真题,详细分析了应聘Java程序员职位的常见考点,主要内容包括面试流程及求职准备、Java语言基础、数据类型、集合框架、图形用户界面、输入与输出、多线程、反射机制、...
Java程序员面试时,通常会遇到一系列关于语言特性和框架的问题,这些题目旨在考察候选人的基础知识、问题解决能力和实践经验。以下是对这些面试题目的详细解答: 1. **final, finally, finalize的区别**: - `...
【JAVA程序员面试题集合】 1. **面向对象的特征** - **抽象**:抽象是将复杂的现实问题简化,忽略不相关细节,关注核心功能。它包括过程抽象(方法)和数据抽象(类)。例如,设计一个汽车类,可能会抽象出引擎、...
根据提供的文件信息,我们可以推断出这是一本关于Java程序员面试和笔试准备的书籍,作者为何昊。本书可能包含了大量关于Java编程语言的基础知识、高级特性以及与面试相关的技巧和策略等内容。下面将对可能涉及的重要...
### 2018最新最全JAVA程序员面试题解析 #### 一、面向对象的特征有哪些方面? 面向对象编程(OOP)是Java的核心思想之一,它主要包括以下四个关键特性: 1. **抽象**:抽象是面向对象编程的一个核心概念,指的是在...
根据提供的文件信息,我们可以整理出一系列与Java程序员面试相关的知识点,包括但不限于基本数据类型、字符串操作、集合框架、异常处理等内容。下面是详细的知识点解析: ### 基本数据类型 1. **基本数据类型与...
【Java程序员面试题详解】 1. 数据库操作: - 创建表A时,要设置m字段为唯一(UNIQUE)且非空(NOT NULL),n字段初始值为0,m、n、y字段不可为空(NOT NULL)。 - 修改表A的n字段初始值,可以通过ALTER TABLE...
### Java程序员面试题详解 #### 一、Java基础知识 1. **作用域public, private, protected, 以及不写时的区别** - **public**: 可以被任何类访问。 - **protected**: 可以被同一包内及不同包内的子类访问。 - ...
### 华为公司Java程序员面试试题解析 #### 颈环节一:面向对象的基本概念 1. **面向对象的特征**: - 封装:将数据和操作这些数据的方法捆绑在一起,隐藏对象的属性和实现细节,仅对外提供公共访问方式。 - 继承...
Java程序员在面试中可能会遇到各种各样的问题,涵盖了语言基础、数据结构、并发编程等多个方面。下面我们将深入探讨这些知识点。 首先,对于Java语法规范,这是每个Java开发者的基础。这包括但不限于变量声明、数据...
Java 程序员必备面试题-V1版.pdf 本资源是一个 Java 面试题集,涵盖了 Java 基础、集合、并发、MySQL、Kafka 等高频知识点。下面是对标题和描述中所说的知识点的详细说明: 动态代理 在 Java 中,动态代理可以...
这份资料集合了“java程序员面试题集”和“部分外企笔试真题总结”,是准备Java技术面试和外企笔试的宝贵资源。以下将针对这两个核心内容展开详细的解析。 首先,Java程序员面试题集通常涵盖了以下几个方面的知识:...