JAVA面试题

Linux演化史:从Unix哲学到AI时代的操作系统活生态 操作系统内核是现代计算的底层基石,其设计哲学深刻影响着软件架构与工程实践。Unix提出的‘小即是美’‘一切皆文件’等原则,奠定了Linux的基因;而GPL许可证构建的开源协作机制,则催生了Debian、Ubuntu及国产信创发行版等多样化生态。Linux并非静态教科书知识,而是持续演进的技术生命体——Docker依赖的Unix域套接字、AI训练调度所需的cgroups与io_uring、WSL2中运行的真实内核,均体现其作为‘隐形脊柱’的技术纵深。理解Linux,就是理解从进程通信、资源隔离到软硬协同的全栈 阅读详情
 
――――――――――JAVA――――――――――
第一,谈谈final, finally, finalize的区别。
 
第二,Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?
 
第三,Static Nested Class 和 Inner Class的不同,说得越多越好(面试题有的很笼统)。
 
第四,&和&&的区别。
 
第五,HashMap和Hashtable的区别。
 
第六,Collection 和 Collections的区别。
你千万别说一个是单数一个是复数。
 
第七,什么时候用assert。
 
API级的技术人员有可能会问这个。
 
第八,GC是什么? 为什么要有GC?
 
基础。
 
第九,String s = new String("xyz");创建了几个String Object?
 
第十,Math.round(11.5)等於多少? Math.round(-11.5)等於多少?
 
第十一,short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?
面试题都是很变态的,要做好受虐的准备。
 
第十二,sleep() 和 wait() 有什么区别?
搞线程的最爱。
 
第十三,Java有没有goto?
 
很十三的问题,如果哪个面试的问到这个问题,我劝你还是别进这家公司。
 
第十四,数组有没有length()这个方法? String有没有length()这个方法?
 
第十五,Overload和Override的区别。Overloaded的方法是否可以改变返回值的类型?
常问。
 
第十六,Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别?
 
第十七,给我一个你最常见到的runtime exception。
如果你这个答不出来,面试的人会认为你没有实际编程经验。
 
第十八,error和exception有什么区别?
 
第十九,List, Set, Map是否继承自Collection接口?
 
第二十,abstract class和interface有什么区别?
常问。
 
第二十一,abstract的method是否可同时是static,是否可同时是native,是否可同时是synchronized?
 
第二十二,接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承实体类(concrete class)?
 
第二十三,启动一个线程是用run()还是start()?
 
第二十四,构造器Constructor是否可被override?
 
第二十五,是否可以继承String类?
 
第二十六,当一个线程进入一个对象的一个synchronized方法后,其它线程是否可进入此对象的其它方法?
 
第二十七,try {}里有一个return语句,那么紧跟在这个try后的finally {}里的code会不会被执行,什么时候被执行,在return前还是后?
 
第二十八,编程题: 用最有效率的方法算出2乘以8等於几?
有C背景的程序员特别喜欢问这种问题。
 
第二十九,两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对?
 
第三十,当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?
 
第三十一,swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上?
 
第三十二,编程题: 写一个Singleton出来。
 
1,作用域public,protected,private,以及不写时的区别

2,ArrayList
和Vector的区别,HashMap和Hashtable的区别

3,char
型变量能不能定义为一个中文?为什么?

4,
多线程有几种表示方法,都是什么?同步有几种实现方法,都是什么
?

5,
继承时候类的执行顺序问题,一般都是选择题,问你将会打印出什么
?

6,
内部类的实现方式
?

7,
垃圾回收机制,如何优化程序
?

8,float
型float f=3.4是否正确
?

Jsp
方面


1,jsp
有哪些内置对象?作用分别是什么?

2,jsp
有哪些动作?作用分别是什么
?

3,include
的两种实现方式的区别
?

4,
两种跳转方式分别是什么?有什么区别
?

Servlet
方面


1,
说一说Servlet的生命周期?

2,Servlet
版本间(忘了问的是哪两个版本了)的不同
?

Jdbc,Jdo
方面


1,
可能会让你写一段Jdbc连Oracle的程序.

2,Class.forName
的作用?为什么要用
?

3,Jdo
是什么
?

Xml
方面


1,xml
有哪些解析技术?区别是什么?

2,
你在项目中用到了xml技术的哪些方面?如何实现的
?

3,
用jdom解析xml文件时如何解决中文问题?如何解析
?

EJB
方面


1,EJB2.0
有哪些内容?分别用在什么场合? EJB2.0和EJB1.1的区别?

MVC
方面


1,MVC
的各个部分都有那些技术来实现?如何实现?

设计模式方面
:

1,
开发中都用到了那些设计模式?用在什么场合
?

JavaScript
方面


1,
如何校验数字型?

CORBA

1,CORBA
是什么?用途是什么?
 
请用自己的理解简单描述一下面向对象的三个特点:封装、继承、多态。

2. 
访问修饰符“public/private/protected/缺省的修饰符”的使用有什么不同?

3. 
用关键字final分别修饰类、方法、变量时,有何意义?

4. JAVA
语言如何进行异常处理,关键字:throws,throw,try,catch,finally分别代表什么意义?在try块中可以抛出异常吗?

5. Object
类(或者其子类)的finalize()方法在什么情况下被调用?

6. 一个“.java”源文件中是否可以包括多个类(不是内部类)?有什么限制?

7. 
内部类可以引用他的包含类的成员吗?有没有什么限制?

8. 
写一段代码,遍历一个List中的元素。

9. java
中有几种方法可以实现一个线程?用什么关键字修饰同步方法? stop()和suspend()方法为何不推荐使用?

10. 
描述使用socket建立客户端与服务器的通信的过程(也可以用代码示例)。

11. 
垃圾回收器的基本原理是什么?垃圾回收器可以马上回收内存吗?有什么办法主动通知虚拟机进行垃圾回收?

12. java
中会存在内存泄漏吗,请简单描述。

13. java
中实现多态的机制是什么?

14. overload(
重载)和override(重写)有什么区别?

15. java
中有几种类型的流?JDK为每种类型的流提供了一些抽象类以供继承,请说出他们分别是哪些类?


16. 
静态变量和实例变量的区别:

17. 
使用jdbc进行数据库查询操作的步骤,比如有一个职工信息表(Staff),它有以下几个field(ID, NAME, PHONE,ADDRESS,AGE),请查找ID为001的雇员的信息并且打印出来,数据库的driver为:"sun.jdbc.odbc.JdbcOdbcDriver",数据库的url使用jdbc:odbc:people

18
,什么是java序列化,如何实现java序列化


18. 
是否可以从一个static方法内部发出对非static方法的调用?

19. 
写clone()方法时,通常都有一行代码,是什么?

20. List
、Map、Set三个接口,存取元素时,各有什么特点?

21. 
写一段代码,遍历一个List中的元素。

22. ArrayList
与Vector的区别?

23. 
如何判断一个对象是否是一个已知类的对象,可以写一段代码说明。

24. 
在JAVA中,如何跳出当前的多重嵌套循环?
 
1.        页面有几个对象,分别实现自什么类jsp
答,其6个,request,response,session,application,out,page分别实现自javax.servlet.ServletRequest,javax.servlet.ServletResponse,javax.servlet.http.HttpSession,javax.servlet.ServletContext,javax.servlet.jsp.JspWriter,javax.servlet.jsp.JspPage
 
2.        类之间的继承关系
 
 
3. jdbc相关知识,其中Class.forName的作用
答,Class.forName("...");  //加载类驱动
    Connection conn = DriverManager.getConnection(sUrl, sUserName, sPassword);
    Statement stmt = conn.createStatement();
 ResultSet rs = stmt.executeQuery(sSQL);
 
4. 客户端连接EJB的代码
答,InitialContext ctx = new InitialContext();
    Object home = ctx.lookup("java:comp/env/ejb/account");
    AccountHome accountHome =
        (AccountHome)PortableRemoteObject.narrow(home, AccountHome.class);
 
5. ejb的分类,用途
答,session bean和entity bean,session bean分Stateful和stateless,entity bean分cmp和bmp
 
6. java有些什么集合类型,各自的区别
答,map,set,list
   HashMap,HashTable
,后者线程同步

   set
不允许重复元素
   ArrayList,Vector,
后者线程同步
   ArrayList,LinkedList
,前者读的速度快,后者修改速度快
 
7. 声明型异常和运行期异常的异同
答,都是Exception的子类
   
声明型必须catch,运行期异常继承自RuntimeException.

8. XML相关
答,分为SAX及DOM两种处理方式
    SAX:
轻量型的方法,事件驱动,部分读入文档
DOM:使用较简单,文档驱动,全部读入
 
9. 你常用的java类
答,String , StringBuffer, 集合类, ....
 
10. struts的优点,流程
答,优点:从mvc,BO VO方面回答
   
流程:client-->总控ActionServlet
   
总控调以下操作:

        -->form
收集数据
        -->action
调javbean处理业务(调ejb,DAO...)
        -->
转向相应的
jsp
    jsp
从form中取得数据显示

   
11.
介绍一下所做过的项目
答,介绍一个就可以,从如到终,加一些个人感想。注意在需求,设计,测试方面多加点口水:)
 
 
权限风暴:sudo背后的安全哲学 普通用户平时用自家钥匙(普通权限),需要修水管时(执行特权操作),向管家申请临时万能钥匙(root权限)。1970年代的计算机系统像不设防的城堡,任何用户都能修改系统核心文件。直到有一天,贝尔实验室的系统管理员发现:实习生误删了整个项目的源代码库。这场灾难催生了用户权限体系,就像给城堡的每个房间配了不同的钥匙。想象你住在一栋有100个房间的公寓,每个房间住着不同的租客。下次当你输入sudo密码时,不妨想象自己正在签署一份数字时代的权利法案——我们既要享受便利,也要守护秩序。某天他的猫跳上键盘,无意中触发。 阅读详情

相关推荐

1、深入了解 UNIX 操作系统:特性、历史与哲学

本文深入介绍了 UNIX 操作系统的特性、历史与哲学。从 UNIX 的基本概念入手,探讨了其多任务、多用户的操作系统特性,以及作为开放系统的广泛应用。文章回顾了 UNIX 的发展历程,包括其在学术与商业领域的演变,并解析了 UNIX 的核心设计理念,如简单命令、管道机制和通用接口等。同时,文章还比较了多种 UNIX 变体,如 Linux、BSD、Solaris、AIX 和 HP-UX,并提供了选择建议。此外,文中涵盖了 UNIX 的基本操作示例,并展望了其在未来云计算、人工智能和大数据领域的发展趋势。无论您

git9versioner的博客 140

遵循Unix哲学 简化系统最安全

遵循Unix哲学 简化系统最安全 作者:Chad Perrin翻译:PurpleEndurer,2010-04-22第1版分类:安全标签:生产率,安全,软件工程,系统设计与实施   前言  在其它所有条件都相等的情况下,简单的方案更安全。    正文   为给定软件系统写的代码越多,bug出现的可能也越大。对代码行数和bug数量的统计分析显示:代码越多,

Purpleendurer@优快云 2283

Unix的文化:错误消息与编程哲学

本文从Unix文化的角度,探讨了其错误消息的幽默一面以及背后的设计哲学。Unix的错误信息常常被幽默地引用,反映了其对简洁和实用的重视。同时,Unix的设计哲学被提炼为一系列原则,如简单性、通用性和避免对用户的潜在伤害,这些原则贯穿于Unix的命令和功能设计中。

weixin_42515842的博客 370

Unix哲学学习笔记

语句摘录: Preface 知识和专能差异巨大,凭借知识可以推断该做什么,而专能可以让你在无意见,条件反射似的把事情做好。 少一些技术,多一些共享文化:显见和显微的,直观和潜流的,不止与方法,更重乎理念。 场景:哲学和历史;设计:哲学原理细分为有关设计和实现;工具:Unix提供的工具;社群:人与人之间的事物和约定。 须弥不重,芥子不轻;Unix程序员的教养。 构成文化是人,获知文化的方

xiajian2010的专栏 3735

Unix安全性的历史与现代挑战

本文深入探讨Unix操作系统的设计哲学及其对安全性的历史影响,指出Unix的安全性问题根源于其设计哲学和早期实现的不足。通过分析Unix的root概念、SUID机制以及安全配置的实践,本文揭示了Unix系统在安全方面面临的主要挑战,并通过具体案例说明了这些问题如何在实际中被利用。文章最后强调了对于Unix系统管理员和用户来说,理解这些安全缺陷的重要性以及采取必要措施来保护系统的安全。

weixin_42511832的博客 756

全面探索UNIX系统

UNIX操作系统,自1969年诞生以来,已经成为现代计算技术中不可或缺的组成部分。它以其强大的多任务处理能力、高效稳定的性能、以及高度的可移植性,被广泛应用于服务器、工作站、嵌入式系统,以及移动设备中。UNIX的设计哲学强调简洁、一致性和透明性。这一理念不仅体现在其命令行界面和系统架构上,还深刻影响了其后续开发的众多派生版本,包括著名的Linux系统。UNIX的这种设计哲学,使得它成为了计算机科学教育和研究的重要平台。

weixin_42605397的博客 583

Linux/Unix哲学

Unix 诞生于贝尔实验室,由 Ken Thompson 和 Dennis Ritchie 等人开发,旨在解决当时操作系统过于庞大、难以维护的问题。它不追求界面美观或商业闭环,而是通过极简抽象、文本化接口和社区协作,成为互联网基础设施、科学计算与嵌入式领域的基石。编写程序处理文本流,因为那是通用接口。与 Windows 的“用户友好集成”或 macOS 的“端到端控制”不同,Unix/Linux 代表了一种。其设计理念源于 1969 年 Unix 的诞生,并由后来的 Linux 继承与发扬,强调。

qq_39580065的博客 802

SAP MRKO与MIRO的对比分析:为何寄售结算需要定制开发?

本文深入分析了SAP系统中MRKO与MIRO在寄售结算中的功能差异,揭示了标准MRKO在财务控制和业务流程上的局限性。通过定制开发实践,如BAdI增强和界面优化,企业可显著提升结算效率与准确性。文章还探讨了未来SAP S/4HANA在寄售结算中的智能化趋势,为相关企业提供技术参考。

weixin_29300241的博客 424

如何理解UNIX与类UNIX系统:一篇文章讲透核心区别与联系

UNIX系统及其衍生的类UNIX系统是现代计算世界的基石,从服务器到移动设备,它们无处不在。本文将深入解析UNIX与类UNIX系统的核心区别与联系,帮助新手快速掌握这一技术体系的精髓。 ## 一、UNIX系统的起源与发展 UNIX最初是1960年代AT&T贝尔实验室开发的研究性操作系统,其设计理念强调"简洁、模块化和可扩展性"。这一理念后来演变为著名的"UNIX哲学":编写只做一件事并做好它的

gitblog_00147的博客 830

C#与发那科机器人通信实战:从SDK配置到机械臂控制

本文详细介绍了如何使用C#与发那科机器人进行通信,从SDK配置到机械臂控制的完整实战流程。内容包括环境准备、通信连接建立、机械臂运动控制、异常处理与状态监控,以及高级功能实战,帮助开发者快速掌握工业机器人编程技术。

weixin_42524276的博客 459

基于Jeecgboot3.9.0的文档管理系统(四)

基于Jeecgboot3.9.0的文档管理系统(四)

宁波阿成的博客 251

UNIX终极指南:从核心哲学到现代操作系统全景图

你是否曾经困惑于Linux、macOS、BSD之间的区别?或者想知道为什么UNIX哲学至今仍然影响着现代计算?本文将带你穿越UNIX的时空隧道,从核心设计理念到现代操作系统生态,为你揭示这个影响了整个计算机世界的操作系统家族的完整面貌。 ## 核心理念:为什么UNIX设计思想至今仍然强大 **UNIX哲学**不是一句简单的口号,而是一整套经过时间检验的计算机科学原则。它的核心可以概括为:"编写

gitblog_00041的博客 476

OpenMVS :用 colmap制作自己的数据集 重建(用colmap计算位姿,将位姿转为MVS需要的格式)

数据集制作主要是在windows进行,比较方便。

程序员,他们想的是什么?他们想的永远都是技术,他们崇尚的也永远都是技术。 3326

在 WSL 中体验 Unix 哲学:从发消息到传输文件

本文介绍了如何通过Windows Subsystem for Linux(WSL)体验Unix哲学,利用nc、tar和openssl等命令行工具实现高效文件传输。从基础的nc网络通信开始,逐步演示了单文件传输、目录打包传输以及加密传输的实现方法。文章展示了如何通过管道将多个专用工具组合起来完成复杂任务,体现了Unix"做一件事并做好"的设计理念。这些方法不仅能提高工作效率,还能让用户在WSL环境中感受命令行工具的强大功能。

tianhao75的博客 2029

python全栈入门到实战【基础篇 01】Python初识:定位、优势与发展历程

本文介绍了热门编程语言Python。它是解释型高级语言,具通用、入门友好、胶水型特点,以简洁易读为设计哲学。优势包括语法简洁高效、生态庞大、跨平台、社区活跃、应用广泛、门槛低。发展历经诞生(1989-1994,吉多创建,1994年1.0发布)、成长(版本迭代,3.0发布)、崛起(Web与大数据推动)、爆发(AI浪潮助推)及持续迭代阶段。

那些看似不起波澜的日复一日,会在某天让你看到坚持的意义 1万+

人像抠图 + OpenGL ES 还能这样玩?没想到吧(附带源码)

OpenGL ES 利用抠图算法实现人像留色。

字节流动 3万+

终极指南:全面了解UNIX和类UNIX操作系统世界

UNIX操作系统家族是现代计算世界的基石,从智能手机到超级计算机,无处不在的UNIX理念和技术支撑着我们的数字生活。本文将带你深入探索UNIX的精彩世界,了解各种UNIX和类UNIX操作系统的特点、应用场景以及如何选择适合你的系统。 ## 什么是UNIX?为什么它如此重要? UNIX®最初是AT&T贝尔实验室在20世纪60年代开发的研究操作系统。今天,UNIX已经演变为一套操作系统标准,称为P

gitblog_00768的博客 433

【人工智能时代】- 一键部署本地AI大模型

Ollama是一个开源项目,致力于简化大型语言模型(LLM)的本地部署过程。它允许用户在自己的硬件上运行和测试最新的语言模型,无需依赖云服务。Ollama提供了一个类似于OpenAI的API接口,使得开发者可以轻松地在自己的应用程序中集成大型语言模型。此外,Ollama WebUI为用户提供了一个友好的界面,用于管理和与模型进行交互。

xiaoli8748的专栏 2386

unix 痛恨者手册

尽管这本书视角独特,以现在的眼光看,作者的抱怨中,真正属于 UNIX 固有问题的只占 50%,其他如对 sendmail 排山倒海的批评,对 C++ 的尽情嘲弄,实际上都不属于 UNIX 系统特有的。特别是对照现在的 Linux 来看,可以看出 Linux 作为当年 UNIX 的继承人,在文件系统,安全性,稳定性等等方面的巨大的进步。这个机器提供给用户的,是优雅的编程环境,如统一的内存管理,统一的函数式接口,良好的文档等等,一切程序员所需要的,都给准备好了。眼下的通胀时代,好好工作,干好眼前的事情是关键。

yilu_beiyu的博客 694

高精地图构建:Lidar SLAM与视觉SLAM对比

高精地图构建:Lidar SLAM与视觉SLAM对比​ ,人工智能,计算机视觉,大模型,AI,本文围绕高精地图构建,对比 Lidar SLAM 与视觉 SLAM。Lidar SLAM 通过激光获取点云数据,精度高、环境适应性强但成本高、数据量大;视觉 SLAM 利用图像,成本低、信息丰富却受光照影响大、深度获取难。还解析了 SLAM、点云等关键概念,介绍了两者融合趋势、应用案例、技术挑战及未来方向,也给出常见问题解答,为相关领域应用与学习提供参考。

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 17万+

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

【Linux系统】Unix系统的历史

Unix诞生于贝尔实验室,在1969年,AT&T公司的贝尔实验室与MIT合作开发的Unix,旨在于创建一个用于大型、并行、多用户的操作系统。是现代操作系统的奠基者,几乎所有主流操作系统(Linux、macOS、BSD 等)都可以追溯到 Unix 的发展历史。以下将从 Unix 的起源开始,详细解析 Unix 家庭树的分支及其对现代计算的影响。之后,Ken Thompson 和 Dennis Ritchie 决定开发一个简化的、功能强大的操作系统,这就是 Unix 的起点。它主要是贝尔实验室内部的研究项目。

猫猫的小茶馆 1524

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

开源项目探索:Runix - 打开Unix哲学的现代之旅

开源项目探索:Runix - 打开Unix哲学的现代之旅 项目介绍 在日新月异的软件开发领域,有一颗璀璨的新星正在崛起——Runix。它是一个深深植根于Unix哲学的开源项目,旨在提供一套简洁、高效且可组合的工具,为开发者带来前所未有的系统管理与交互体验。通过现代化的编程实践和技术栈,Runix重新诠释了经典的Unix理念:“做一件事,并做好。”无论是系统管理员还是日常的开发者,都能在这个项目中找...

gitblog_01038的博客 576

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Unix的简单介绍

Unix系统全面介绍

qq_54556560的博客 1373

对于想深入学习 Linux 的人来说,掌握 Unix 思想有多重要?

本书共分为 20章,内容涵盖了部署Linux系统,常用的Linux 命令,与文件读写操作有关的技术,使用Vim编辑器编写和修改配置文件,用户身份与文件权限的设置,硬盘设备分区、格式化以及挂载等操作,部署RAID磁盘阵列和LVM,使用firewalld防火墙保障网络安全,使用。实际上,对普通用户而言,开源共享精神仅具备锦上添花的效果,真正重要的是 Linux 系统本身的优秀质量,它提供了类似 UNIX 系统的优雅和高效的程序界面,并继承了 UNIX 系统的良好稳定性。本书分为五大部分,每部分都各具特色。

人邮异步社区 2185
上一篇: ORACLE面试题
下一篇: jsp及Servlet面试题
lzb821
博客等级 码龄20年 12粉丝 18原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值