JAVA面试题.doc
需积分: 0 89 浏览量
更新于2019-08-20
收藏 42KB DOC 举报
Java面试题涵盖了许多核心的Java技术和概念,这些知识点对于Java开发者来说至关重要。以下是一些详细解答:
1. **Linux 命令查找进程**:
在Linux中,可以使用`ps -ef`命令列出所有运行的进程,然后结合`grep`命令过滤出名字中包含"abcd"的进程。完整的命令是:`ps -ef | grep abcd`。
2. **Oracle数据库索引失效的情况**:
- **无查询条件**:如果查询没有使用任何索引列,索引将不会被使用。
- **空值查询**:B-tree索引不支持对NULL值的查询,如`comm IS NULL`。
- **函数操作**:当索引列在WHERE子句中使用了函数,且未创建函数索引,如`trunc(birthdate)`。
- **模糊查询**:使用`LIKE '%T'`会导致索引失效,因为Oracle无法利用索引进行全模式匹配。
- **NOT IN和NOT EXISTS**:这些否定条件会导致优化器绕过索引。
- **不等于操作**:如`colum <> 0`,可以通过转换为`colum>0 OR colum<0`来利用索引。
- **非第一位置的复合索引列**:单独引用复合索引的非第一列,索引可能无效。
- **数据类型不匹配**:如将数值与字符串比较,Oracle会尝试隐式转换,导致索引失效。
3. **创建线程的方式**:
创建Java线程有两种主要方法:
- **继承Thread类**:重写`run()`方法,然后创建Thread实例并调用`start()`。
- **实现Runnable接口**:实现`run()`方法,然后将Runnable对象传递给Thread的构造器,创建Thread并调用`start()`。
4. **ArrayList与LinkedList的区别**:
- **数据结构**:ArrayList基于动态数组,LinkedList基于链表。
- **查找效率**:ArrayList由于是连续存储,查找速度快,适合随机访问。
- **插入和删除效率**:LinkedList在插入和删除时表现更好,因为它只需要改变相邻元素的引用,而ArrayList需要移动大量元素。
5. **JVM内存管理**:
- **栈(Stack)**:存储基本类型变量、对象引用以及函数调用的局部变量,执行速度快,但空间有限。
- **堆(Heap)**:存放通过`new`关键字创建的对象实例,便于垃圾回收,但访问速度相对较慢。
- **静态区(Static Area)**:存储程序中的字面量和静态变量,生命周期与类相同,加载时分配,卸载时释放。
6. **Spring AOP**:
- **概念**:AOP是一种编程范式,用于处理系统的横切关注点,如日志、事务管理等,将它们从业务逻辑中分离出来。
- **实现原理**:Spring AOP主要通过动态代理实现,即在运行时生成一个代理对象,该代理对象在调用目标方法前后执行切面代码,无需修改源代码或字节码。
- **应用场景**:在实际开发中,AOP广泛用于声明式事务管理、日志记录、性能监控、缓存管理等多个方面,简化了代码结构,提高了代码的可维护性。
以上只是Java面试中常见的部分知识点,实际上,Java面试还可能涉及更多主题,如多线程同步、异常处理、集合框架、IO流、设计模式、JVM调优、数据库连接池等。准备面试时,应全面掌握这些基础及进阶知识。
bejjm
- 粉丝: 0
- 资源: 4
最新资源
- 云计算,搭建分布式,然后实现Titantic数据集训练、分类的的代码
- 同城宠物照看-JAVA-基于Spring Boot的同城宠物照看系统的设计与实现(毕业论文)
- 云计算,实现中文字频统计代码,课程设计
- weixin138社区互助养老+ssm(论文+源码)-kaic.zip
- 扶贫助农系统-JAVA-基于spring boot扶贫助农系统设计与实现(毕业论文)
- 母婴护理知识共享-JAVA-基于SpringBoot+vue 的母婴护理知识共享系统(毕业论文)
- 番茄叶片图像病害多标签分类,约5600张数据
- 影音互动科普网站-JAVA-基于SpringBoot的哈利波特书影音互动科普网站设计与实现(毕业论文)
- 航空散货调度-JAVA-基于SpringBoot的航空散货调度系统设计与实现(毕业论文)
- 基于Python Scrapy的贝壳找房爬虫程序
- zigbee CC2530无线自组网协议栈实现一个协调器+多个终端的通讯及控制.zip
- 校园二手物品交易-JAVA-基于springBoot的校园二手物品交易系统的设计与实现(毕业论文)
- 计算机视觉项目:Swin-Transformer 【tiny、small、base】模型实现的图像识别项目:番茄病害图像分类
- 功能完善的电商数据智能爬虫采集系统项目全套技术资料.zip
- 青少年心理健康教育网-JAVA-基于springboot的青少年心理健康教育网站的设计与实现(毕业论文)
- 密评流程及商密应用方案解析