java工程师基础知识面试
来源:互联网 发布:android系统源码架构 编辑:程序博客网 时间:2024/05/22 17:42
最近思考到的初(中)级java开发工程师基础知识可以考察的点,理论,实践都有涉及。个人理解并不是要这些点都掌握才算合格的java工程师,面试的时候也不是要全问一通,抽取一些组合提问都合理。只是列出这些点,暂时没有准备问题的答案
java语言基础知识
- 1个char类型数据占几个字节
- jdk1.8以前,单线程环境下字符串拼接用什么合适,StringBuilder,为什么
- hashCode方法的作用,重写hashCode方法注意什么点
- equal方法的作用,重写equal方法注意什么点
- java对象引用的理解,对象深/浅拷贝
并发知识考察
- 单个java程序中,多线程之间实现一个 等待/通知模型,使用
- Lock/condition可以,使用synchronized-wait/notify也可以。 线程池的简单使用,参数设置
- violate的作用,解决什么问题,基本原理;提及一个常用场景,提示 AtomicInteger内部的实现,线程启动停止位
- ThreadLocal的作用,有什么好处,基本原理;提及一个常用场景
- 简述currentHashMap的结构,认识
JVM基础知识
- 简述JVM中的内存空间布局,新生代,老年代,新创建的一个对象的生命周期
- gc的作用,触发gc的时机,副作用
- java的线程模型,用户级线程还是内核级线程,什么比例关系,线程栈中保存什么,和公共堆中数据的交互
- 查看JVM运行状态的几个常用命令,jstat, jstack, jmap, 简单说说了解
java进阶问题
- 简述java泛型,是怎么个实现方式,和object类型比有什么优势
- 简述java动态代理是怎么实现的
- 简述java类加载器,双亲代理,这样的好处
基础数据结构&基础算法
- 二分查找,实现,时间复杂度
- 快速排序,实现,时间复杂度
- 二叉树,二叉树中序遍历,实现,时间复杂度
- 数组的循环队列,实现
- 优先队列(大顶堆),简述低层数据结构,插入删除逻辑,时间复杂度
- 两个数组求并较差,最初级的两层循环,学会使用set降低时间复杂度
- 简易的bitmap
- hashmap的简单实现原理,填装因子,基于链表的碰撞检测,扩容,rehash
数据库(Mysql在InnoDB下)
- 创建选课系统相关表(tb_student, tb_course, tb_student_course, tb_student_score)
- 查询某个课程所有选课的学生
- 插叙某个课程所有几个的学生
- 查询一个学生的所有课程的分数
- 建立索引有什么需要注意的点
- 索引怎么和数据库中的数据结构对应起来
- 什么时候垂直分表,什么时候水平分表
- 数据库集群环境下,写后读,如果不在是事务中,会有什么影响
Linux常用命令
- grep
- wc
- tail
- sort uniq
- sed awk
- top
- ps
- less vim cat
- access.log日志中,查询某个ip的请求次数;请求次数最多的10个ip,找出请求最多的一个小时
网络原理
- tcp建立链接和断开链接
- 服务端建立socket(tcp)链接写法,客户端建立socket(tcp)链接写法
- udp和tcp的区别
- 说说http协议和tcp协议之间的关系
常用设计模式
- 生产者-消费者
- 观察者
- 状态机
- 装饰模式
阅读全文
0 0
- java工程师基础知识面试
- java 工程师 基础知识总结
- 实习面试:java工程师
- Java工程师面试体验
- Java工程师面试必备
- Java工程师面试常见问题
- Java工程师面试冲刺
- java工程师面试心得
- java工程师面试技巧
- 【Java面试】---Java基础知识
- java面试基础知识
- java面试基础知识
- java基础知识(面试)
- java笔试面试基础知识
- JAVA面试基础知识
- JAVA程序员面试基础知识
- java程序员面试基础知识
- 【面试】-Java基础知识
- Android开发之QQ分享
- dtd设计
- 【撸码caffe 二】 blob.hpp
- 那一年, 我第一次在工作中用到了三次握手的分析
- 【一步一步】Spring 源码环境搭建
- java工程师基础知识面试
- * 24种设计模式——责任链模式
- 设置meta标签 清除页面缓存,如:<meta http-equiv="Cache-Control" content="no-cache"/>
- Gym
- 在Visual Studio中使用DLL-项目引用链接lib
- bootstrap注册界面
- 2017/7/19小程序基础类库更新,Map组件又可以在微信开发者工具中使用了
- JAVA中的反射机制
- 十七天