微信

使用微信服务,更方便

职友集>Java面试题 > java 面试题

java 面试题

2015-07-20 06:30:02 阅读( 195 )

2669人 收藏本页

标签:Java面试题

1、开发中都用到了哪些设计模式?用在什么场合?
主要用到了MVC的设计模式。用来开发JSP/Servlet,或者J2EE的相关运用
2.概述MVC的体系结构?
MVC包括三类对象。model是应用对象,view是视图,controller是控制器,它定义用户界面对用户输入的响应方式
在MVC体系中,模型通常被称为“业务逻辑”,是真正完成任务的代码,视图是使用界面,反应数据的变化。控制器控制着模型和视图之间的交互过程,他决定着向用户返回怎样的视图、检查通过界面输入的信息以及选择输入信息的模型
在MVC中,表示陈和逻辑层分离,各部分可相互独立进行开发,便于开发和维护,提高了开发率
3、Class.forName的作用?为什么要用?
调用该访问返回一个以字符串指定的类的对象
4、J2EE是技术还是平台还是框架?
J2EE本身是一个标准,一个为企业分布式应用的开发提供的标准平台
J2EE也是一个框架,包括JDBC、JNDI、RMI、JMS、EJB、JTA等技术
5 、j2ee常用的设计模式?说明工厂模式。
Java中的23种设计模式:
Factory(工厂模式), Builder(建造模式), Factory Method(工厂方法模式),
Prototype(原始模型模式),Singleton(单例模式), Facade(门面模式),
Adapter(适配器模式), Bridge(桥梁模式), Composite(合成模式),
Decorator(装饰模式), Flyweight(享元模式), Proxy(代理模式),
Command(命令模式), Interpreter(解释器模式), Visitor(访问者模式),
Iterator(迭代子模式), Mediator(调停者模式), Memento(备忘录模式),
Observer(观察者模式), State(状态模式), Strategy(策略模式),
Template Method(模板方法模式), Chain Of Responsibleity(责任链模式)
工厂模式:工厂模式是一种经常被使用到的模式,根据工厂模式实现的类可以根据提供的数据生成一组类中某一个类的实例,通常这一组类有一个公共的抽象父类并且实现了相同的方法,但是这些方法针对不同的数据进行了不同的操作。首先需要定义一个基类,该类的子类通过不同的方法实现了基类中的方法。然后需要定义一个工厂类,工厂类可以根据条件生成不同的子类实例。当得到子类的实例后,开发人员可以调用基类中的方法而不必考虑到底返回的是哪一个子类的实例。
6、UML方面
标准建模语言UML。用例图,静态图(包括类图、对象图和包图),行为图,交互图(顺序图,合作图),实现图
7.java种有没有goto?
有,为保留字.但是尚未使用.
8、用最有效率的方法算出2乘以8等於几
2 << 3
9、抽象类与接口?
答:抽象类与接口都用于抽象,但是抽象类(JAVA中)可以有自己的部分实现,而接口则完全是一个标识(同时有多重继承的功能)
JAVA类实现序例化的方法是实现java.io.Serializable接口
Collection框架中实现比较要实现Comparable 接口和 Comparator 接口
10、描述一下JVM加载class文件的原理机制?
答:JVM中类的装载是由ClassLoader和它的子类来实现的,Java ClassLoader 是一个重要的Java运行时系统组件。它负责在运行时查找和装入类文件的类。
.11、在JAVA中,如何跳出当前的多重嵌套循环?
答:用break; return 方法。
.12、List、Map、Set三个接口,存取元素时,各有什么特点?
答:List 以特定次序来持有元素,可有重复元素。Set 无法拥有重复元素,内部排序。Map 保存key-value值,value可多值。

13、forward 和redirect的区别
答:forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器,浏览器根本不知道服务器发送的内容是从哪儿来的,所以它的地址栏中还是原来的地址。
redirect就是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址,一般来说浏览器会用刚才请求的所有参数重新请求,所以session,request参数都可以获取。

来自IT公司面试手册

下一篇:解释一下class.forname的用法

上一篇:java开发笔试题

亲~ 如果您有更好的答案 可在评论区发表您独到的见解。

您想查看更多的信息: 面试题