2023年java程序员面试常见问题.docxVIP

  1. 1、本文档共52页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

1.你对面向对象的理解?

●我的思绪是:

回答时从面向对象的三大特性回答。包括三个特性:继承、封装、多态。

●类的继承性是指从已经有的一种类来extends子类,子类具有了父类的所有特性,同步,子类也可以

有新的特性。例如:人是一种类,男人具有了人类的所有的特性,例如思索,例如劳动。同步,男人

也有新的特性,例如男人会长胡子。

●类的封装是指类把所有的操作都封闭起来,仅仅提供接口出来让其他人使用,使用的人没有必要懂

得类里面的操作,只需要懂得操作接口就可以了。例如开汽车,我们只需要懂得方向盘、刹车、油

门等等的使用就可以了,没有必要懂得刹车是怎样构成的封闭好的操作。同步,封装也提高了程序的

可替代性。例如两个汽车企业实现刹车的方式不同样样,不过,只要我们学会了使用刹车,那么,

开两个汽车企业的车就都没有问题了,我们不需要考虑他们怎样实现刹车这门技术的。

●类的多态性是一种对象的某项功能可以处理不同样类型的问题,或者一种子类可以将父类的某个功

能替代成新的功能,详细到编程的方面来说实现类的多态有override和overload,也就是重写和重

载。

2.同步面向对象尚有一种很重要的概念:抽象。抽象就是一种事物的本质。当然对于本质,不同样的角

度却会有不同样的理解。男人,在和女人一起的时候,它的本质是人。在和所有的生物一起的时候,

它的本质是动物。(虽然哲学家都说事物的本质只有一种,不过,我仍然坚持我的观点)

java中String类为何要设计成final呢?

不容许其他类继承。这个应当不是最终原因,但这里权且也当成是一种原因。

String类中的组员属性也几乎都设计成了privatefinal的,这样String就被设计成一种不变类,

这样有助于共享,提高性能。可以将字符串对象保留在字符串常量池中以供与字面值相似字符串对象

共享。假如String对象是可变的,那就不能这样共享,由于一旦对某一种String类型变量引用的

对象值变化,将同步变化一起共享字符串对象的其他String类型变量所引用的对象的值。

3.String被设计为不变类,其中的offset,value[]都被设计成privatefinal的,这样在多线程时,

对String对象的访问是可以保证安全的。java程序语言的许多特性依赖于不可变的String对象

4.说说Hashpmap的原理

HashMap概述

HashMap是基于哈希表的Map接口的非同步实现。此实现提供所有可选的映射操作,并容许使用null

值和null键。此类不保证映射的次序,尤其是它不保证该次序恒久不变。

HashMap的数据构造

5.在java编程语言中,最基本的构造就是两种,一种是数组,此外一种是模拟指针(引用),所有的

数据构造都可以用这两个基本构造来构造的,HashMap也不例外。HashMap实际上是一种“链表散列”

的数据构造,即数组和链表的结合体。HashMap底层就是一种数组构造,数组中的每一项又是一种链

表。当新建一种HashMap的时候,就会初始化一种数组。

6.什么是AOP

1.概念简介:所谓AOP,即Aspectorientiedprogram,就是面向方面的编程,

2.什么是方面:所谓“方面”,简朴地说,就是将那些与业务无关,却为业务模块所共同调用的逻辑

或责任封装起来,便于减少系统的反复代码,减少模块间的耦合度,并有助于未来的可操作性和可

维护性。

3.Aop的原理:面向切面编程,将程序中的交叉业务逻辑(例如安全,日志,事务等),封装成一种

切面,然后注入到目的对象(详细业务逻辑)中去。

4.实现AOP的技术,重要分为两大类:

一是采用动态代理技术,运用截取消息的方式,对该消息进行装饰,以取代原有对象行为的执行;

7.二是采用静态织入的方式,引入特定的语法创立“方面”,从而使得编译器可以在编译期间织入有关

“方面”的代码

8.IOC

9.控制反转也叫依赖注入。运用了工厂模式将对象交给容器管理,你只需要在spring配置文献中配置对

应的bean,以及设置有关的属性,让spring容器来生成类的实例对象以及管理对象。

10.数据库触发器的优缺陷以及使用措施

11.触发器本质上讲就是事件监控器,可以定义在数据库系统进行某一种操作的前后。

当数据库系统在进行特定的操作时,发既有触发器定义,就去执行触发器定义的功能,从而满足某

些特定的需要。(触发器就是你在做某个操作的时候触发此外一种操作)

例如,在更新某些数据后,再去更新特定的数据。

这就可以定义一种

文档评论(0)

131****1036 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档