java面试基础知识

文章转载自:https://blog.csdn.net/mengruozheng/article/details/80650914

1.Errorexception的区别:

Error表示系统级的错误和程序不必处理的异常。

Exception表示需要捕捉或者需要程序进行处理的异常。

2.java中一个类声明了final是什么意思?

表明这个类不能被继承是顶级类。

3.谈谈finalfinallyfinalize的区别:

Final是修饰符,final修饰一个类这个类不能被继承,修饰变量必须在变量声明的同时给变量付初始值,将变量或者方法声明为final,可以保证在使用中不被改变。

Finally是在异常处理中常常用到的,finally用来执行任何消除操作。

Finalize是方法名,Finalize()方法在垃圾收集器将对象从内存中清楚之前做的必要的清洗工作。

4HashMapHashtable的区别:

HashMap允许键和值为空。

HashTable不允许键和值为空。

5. CollectionCollections的区别:

Collectionsjava.util下的类,它包含有关集合操作的的静态方法。

Collectionjava.util下的接口,他是各种集合结构的接口。

6. String s = new String(“abc”);建立了几个Object对象?

两个第一个是s,第二个是abc

7. Math.round(11.5)等于多少? Math.round(-11.5)等于多少?

12-11

8. Short s1 = 1s1=s1+1;有什么错,Short s1 = 1s1+=1;有什么错?

1.s1short类型而s1+1int类型,不能转换为short类型。

2.正确。

9.数组中有没有length()这个方法?String有没有length()这个方法?

数组中没有这个方法。但是有这个属性。

String有这个方法。

10OverloadOverride的区别,Override的方法是否可以改变返回值类型?

Override方法的重写,重写是父类之间一种多态的变现。

Overload方法重载,重载是是一个类中的多态的表现,是可以改变返回值类型的。

 

11List,Set,Map是否继承Collection接口?

ListSet是,Map不是。

12Abstract classinterface有什么区别:

Abstract class:声明方法的存在而不去实现它的类叫做抽象类

Interface:是接口。

13.接口是否可以继承接口?抽象类可实现接口?抽象类是否可以继承实体类?

1.接口可以继承接口2.抽象类可以实现接口3.如果实体类构造函数是可以继承的。

14.构造器Constructor是否可被override

不能被继承,因为不能重写Orverriding,但可以被重载。

15String是否可以继承String类?

Stringfinal类型所以不能被继承。

16Try{}里有一个return语句,那么紧跟在try后的finally{}里的code会不会执行,什么时候执行,在return前还是后?

会执行,在return前执行。

17.两个对象引用值相同(x.equals(y)==true),但却可有不能的hash code,这句话对么?

不对,有相同的hash code

18.当一个对象当做参数传到一个方法后,此方法可以改变这个对象的属性,并返回变化后的结果,那么这里是值传递还引用传递?

是值传递。Java 编程语言只有值传递参数。当一个对象实例作为一个参数被传递到方法中时,参数的值就是对该对象的引用。对象的内容可以在被调用的方法中改变,但对象的引用是永远不会改变的。

19Switch是否可以用在bytelongString上?

Switch中的case语句中的参数应该是intshortchar类型所以都不能作用于switch中。

20.作用于privatepublicprotected区别:

Public适用于各种类比较开放

Protected 使用与当前类,同一个包下的和子孙类

Private 只能用于当前类

21Char中能不能存储一个中文汉字,为什么?

能够储存一个中文汉字的,因为一个中文汉字占16个字节,所以放一个中文汉字是没有问题的。

22Float f = 3.4是否正确?

不正确,类型转换不正确,应该强类型转换。

23.抽象类的接口的区别:

抽象类可以有自己的部分实现,接口 完全是一个标示

24StringStringBuffer的区别:

String的长度是不可以改变的,StringBuffer的长度是可以改变的。

25Jsp中有哪些内置对象,分别的作用是什么?

Request:用户端请求,包括getpost

Response:网页传回用户端的回应。

PageContext:网页的属性在这里管理

Session:与请求有关的会话期

Application servlet正在执行的内容

Out:用来传送回应的输出

Pagejsp本身。

Configservlet的构架部件。

Exception:针对错误网页,为捕捉的例外。

26.说一说servlet的生命周期:

Servlet的生周期包括加载,实例化,初始化,处理请求和服务结束。由initservicesdestroy方法表达。

27Java Servlet APIforwardredirect有什么区别:

前者是容器中控制权的转向,在浏览器转给你不会显示转向后的地址,后者是完全跳转,浏览器会得到跳转的地址, 并重新发送请求链接!

28J2ee是什么?

J2eesun公司提出的多层,分布式,基于组件的企业应用模型。

29.面向对象的特征有哪些?

封装,继承,多态,抽象

30&&&|||的区别:

&&||只要不满足一个判断条件后面的就不在判断了,而&|对后面的所有进行判断。

31“==”equals的区别:

==比较的是对象的地址,也就是是否是同一个对象;

equal比较的是对象的值。

32Integerint的区别:

Int是基本数据类型,Integerint的封装类。

33MVC各部分都有哪些技术来实现的?如何实现的?

MVCModel-View-Controller的简写,Model代表的是应用的业务逻辑,“View”应用的是表示面,“Controller”是提供的应用的的处理过程的控制,通过这种设计模型把应用逻辑,处理过程和显示逻辑分成不同的组件实现。这些组件可以进行交互和重用。

34Hibernate的工作原理及为什么要用?

原理: 1.读取并解析配置文件

2. 读取并解析映射信息,创建SessionFactory

3.打开session

4.创建事务Transation

5.持久化操作

6.提交事务

7.关闭session

8.关闭sessionFactory

为什么要用: 1.JDBC访问数据库代码进行了封装,大大简化了数据库繁琐的重复性代码。

2.Hibernate是基于JDBC的主流框架,是优秀的ORM实现,它很大的简化了DAO层的代码工作。

3.Hibernate性能很好,是轻量级框架,映射的灵活性很出色,它支持各种关系数据库,从一对一到多对多的复杂关系。

35Hibernate是如何延迟加载的?

提供了属性的延迟加载功能,当hibernate在查询数据库时,数据并没有在与内存中,当成许真正对数据操作时,对象在存在内存中,实现了延迟加载,它省掉了服务器的内存开销,提高了服务器的性能。

36Hibernate怎么实现类之间的关系?(如一对多,多对多)

类与类之间的关系主要体现在表与表之间的关系进行操作,他们都是对对象进行操作,我们程序中把所有的表与类映射在一起,他们通过配置文件中的many-to-oneone-to-manymany-tomany

37Spring是什么?

Spring是集成许多第三方框架的大杂烩,核心技术是IOC(控制翻转也叫依赖注入)和AOP(面向切面编程)。

AOP让开发人员可以创建非行为的关注点,成为横向切点,并将他们插入到应用程序代码中,使用AOP后,公共服务(如日志,持久化,事务等)就可以分解成方面并应用到域对象上,同时不会增加域对象对对象模型的复杂性。

IOC允许创建一个可以构造对象的应用环境,然后向这些对象传递他们的协作对象。

38Struts2的执行过程

Struts2可以分为三个部分,核心控制器FilterDispatcher,业务控制器Action和业务实现的企业业务逻辑组件。

基本流程: 1.客户端浏览器发出的HTTP请求。

2.根据web.xml配置请求被FliterDispatcher接收。

3.根据struts.xml配置文件,找到调用的Action类和方法,并通过Ioc方式,将值注入给Action

4.Action调用业务逻辑组件处理业务逻辑

5.Action执行完毕,根据struts.xml中的配置找到对应的返回结果result,对跳转到相应的页面

6.返回http相应到的客户端浏览器。

39Hibernate有几种查询方式

Hql查询,sql查询,条件查询

40Load()get()的区别

Load检索不到会抛出异常而get会返回null

Load充分利用内部缓存和二级缓存,get方法 只是用内部缓存

41Hibernateupdate()saveOrupdate()的区别

Update针对已存在的实体对象

saveOrupdate对象存在与是否都不会任何影响

42HTTP请求getpost的区别

Get是向服务器上获取数据,post是向服务器传送数据

43Request.getAttribute()request.getParameter()的区别

getAttribute是取得jsp中用getAttribute设定的Attribute

Parameter得到的是StringAttribute得到的是Object

程序员竞争很大,萌新真的很难打开这扇大门

最后祝大家都能找到适合自己的工作。

猜你喜欢

转载自blog.csdn.net/qq_41286145/article/details/80669719