ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Javaweb编程技术期末试卷,已拿意向书!

2021-07-03 07:04:17  阅读:141  来源: 互联网

标签:Java Javaweb 区别 什么 JVM 线程 期末试卷 MySQL 编程技术


## 专题5:Java序列化 * 1、什么是java序列化,如何实现java序列化? * 2、保存(持久化)对象及其状态到内存或者磁盘 * 3、序列化对象以字节数组保持-静态成员不保存 * 4、序列化用户远程对象传输 * 5、Serializable 实现序列化 * 6、writeObject 和 readObject 自定义序列化策略 * 7、序列化 ID * 8、序列化并不保存静态变量 * 9、Transient 关键字阻止该变量被序列化到文件中 * 10、序列化(深 clone 一中实现) ![image](http://www.icode9.com/i/li/?n=2&i=images/20210703/1625265121169834.jpg) ## 专题6:Java注解 * 1、4种标准元注解是哪四种? * 2、注解是什么? ## 专题7:多线程&并发 * 1、Java中实现多线程有几种方法 * 2、继承 Thread 类 * 3、实现 Runnable 接口。 * 4、ExecutorService、 Callable、 Future 有返回值线程 * 5、基于线程池的方式 * 6、4 种线程池 * 7、如何停止一个正在运行的线程 * 8、notify()和notifyAll()有什么区别? * 9、sleep()和wait() 有什么区别? * 10、volatile 是什么?可以保证有序性吗? * 11、Thread 类中的start() 和 run() 方法有什么区别? * 12、为什么wait, notify 和 notifyAll这些方法不在thread类里面? * 13、为什么wait和notify方法要在同步块中调用? * 14、Java中interrupted 和 isInterruptedd方法的区别? * 15、Java中synchronized 和 ReentrantLock 有什么不同? * 16、有三个线程T1,T2,T3,如何保证顺序执行? * 17、SynchronizedMap和ConcurrentHashMap有什么区别? * 18、什么是线程安全 * 19、Thread类中的yield方法有什么作用? * 20、Java线程池中submit() 和 execute()方法有什么区别? * 21、说一说自己对于 synchronized 关键字的了解 * 22、说说自己是怎么使用 synchronized 关键字,在项目中用到了吗synchronized关键字最主要的三种使用方式 * 23、什么是线程安全?Vector是一个线程安全类吗? * 24、volatile关键字的作用? * 25、简述一下你对线程池的理解 * 26、线程生命周期(状态) * 27、新建状态(NEW) * 28、就绪状态(RUNNABLE) * 29、运行状态(RUNNING) * 30、阻塞状态(BLOCKED) * 31、线程死亡(DEAD) * 32、终止线程 4 种方式 * 33、start 与 run 区别 * 34、JAVA 后台线程 * 35、什么是乐观锁 * 36、什么是悲观锁 * 37、什么是自旋锁 * 38、Synchronized 同步锁 * 39、ReentrantLock * 40、Condition 类和 Object 类锁方法区别区别 * 41、tryLock 和 lock 和 lockInterruptibly 的区别 * 42、Semaphore 信号量 * 43、Semaphore 与 ReentrantLock 区别 * 44、可重入锁(递归锁) * 45、公平锁与非公平锁 * 46、ReadWriteLock 读写锁 * 47、共享锁和独占锁 * 48、重量级锁(Mutex Lock) * 49、轻量级锁 * 50、偏向锁 * 51、分段锁 * 52、锁优化 * 53、线程基本方法 * 54、线程等待(wait) * 55、线程睡眠(sleep) * 56、线程让步(yield) * 57、线程中断(interrupt) * 58、Join 等待其他线程终止 * 59、为什么要用 join()方法? * 60、线程唤醒(notify) * 61、线程其他方法 * 62、进程 * 63、上下文 * 64、寄存器 * 65、程序计数器 * 66、PCB-“切换桢” * 67、上下文切换的活动 * 68、引起线程上下文切换的原因 * 69、同步锁 * 70、死锁 * 71、线程池原理 * 72、线程复 * 73、线程池的组成 * 74、拒绝策略 * 75、Java 线程池工作过程 * 76、JAVA 阻塞队列原理 * 77、Java 中的阻塞队列 * 78、ArrayBlockingQueue(公平、非公平) * 79、LinkedBlockingQueue(两个独立锁提高并发) * 80、PriorityBlockingQueue(compareTo 排序实现优先) * 81、DelayQueue(缓存失效、定时任务 ) * 82、SynchronousQueue(不存储数据、可用于传递数据) * 83、LinkedTransferQueue * 84、LinkedBlockingDeque * 85、在 java 中守护线程和本地线程区别 * 86、线程与进程的区别? * 87、什么是多线程中的上下文切换? * 88、死锁与活锁的区别,死锁与饥饿的区别? * 89、Java 中用到的线程调度算法是什么? * 90、什么是线程组,为什么在 Java 中不推荐使用? * 91、为什么使用 Executor 框架? * 92、在 Java 中 Executor 和 Executors 的区别? * 93、如何在 Windows 和 Linux 上查找哪个线程使用的 CPU 时间最长? * 94、什么是原子操作?在 Java Concurrency API 中有哪些原子类(atomic classes)? * 95、Java Concurrency API 中的 Lock 接口(Lock interface)是什么?对比同步它有什么优势? * 96、什么是 Executors 框架? * 97、什么是阻塞队列?阻塞队列的实现原理是什么?如何使用阻塞队列来实现生产者-消费者模型? * 98、什么是 Callable 和 Future? * 99、什么是 FutureTask?使用 ExecutorService 启动任务。 * 100、什么是并发容器的实现? * 101、多线程同步和互斥有几种实现方法,都是什么? * 102、什么是竞争条件?你怎样发现和解决竞争? * 103、为什么我们调用 start()方法时会执行 run()方法,为什么我们不能直接调用 run()方法? * 104、Java中,你怎样唤醒一个阻塞的线程? * 105、在 Java 中 CycliBarriar 和 CountdownLatch 有什么区别? * 106、什么是不可变对象,它对写并发应用有什么帮助? * 107、Java 中用到的线程调度算法是什么? * 108、什么是线程组,为什么在 Java 中不推荐使用? ![image](http://www.icode9.com/i/li/?n=2&i=images/20210703/1625265121538753.jpg) ## 专题8:JVM * 1、java中会存在内存泄漏吗,请简单描述。 * 2、64 位 JVM 中,int 的长度是多数? * 3、Serial 与 Parallel GC 之间的不同之处? * 4、32 位和 64 位的 JVM,int 类型变量的长度是多数? * 5、Java 中 WeakReference 与 SoftReference 的区别? * 6、JVM 选项 -XX:+UseCompressedOops 有什么作用?为什么要使用? * 7、怎样通过 Java 程序来判断 JVM 是 32 位 还是 64位? * 8、32 位 JVM 和 64 位 JVM 的最大堆内存分别是多数? * 9、JRE、JDK、JVM 及 JIT 之间有什么不同? * 10、解释 Java 堆空间及 GC? * 11、JVM 内存区域 * 12、程序计数器(线程私有) * 13、虚拟机栈(线程私有) * 14、本地方法区(线程私有) * 15、你能保证 GC 执行吗? * 16、怎么获取 Java 程序使用的内存?堆使用的百分比? * 17、Java 中堆和栈有什么区别? * 18、描述一下 JVM 加载 class 文件的原理机制 * 19、GC 是什么?为什么要有 GC? * 20、堆(Heap-线程共享) -运行时数据区 * 21、方法区/永久代(线程共享) * 22、JVM 运行时内存 * 23、新生代 * 24、老年代 * 25、永久代 * 26、JAVA8 与元数据 * 27、引用计数法 * 28、可达性分析 * 29、标记清除算法( Mark-Sweep) * 30、复制算法(copying) * 31、标记整理算法(Mark-Compact) * 32、分代收集算法 * 33、新生代与复制算法 * 34、老年代与标记复制算法 * 35、JAVA 强引用 * 36、JAVA软引用 * 37、JAVA弱引用 * 38、JAVA虚引用 * 39、分代收集算法 * 40、在新生代-复制算法 * 41、在老年代-标记整理算法 * 42、分区收集算法 * 43、GC 垃圾收集器 * 44、Serial 垃圾收集器(单线程、 复制算法) * 45、ParNew 垃圾收集器(Serial+多线程) * 46、Parallel Scavenge 收集器(多线程复制算法、高效) * 57、Serial Old 收集器(单线程标记整理算法 ) * 58、Parallel Old 收集器(多线程标记整理算法) * 59、CMS 收集器(多线程标记清除算法) * 60、G1 收集器 * 61、JVM 类加载机制 * 62、类加载器 * 63、双亲委派 * 64、OSGI( 动态模型系统) * 65、动态改变构造 * 66、模块化编程与热插拔 * 67、JVM内存模型 * 68、栈 * 69、本地方法栈 * 70、程序计数器 * 71、堆 * 72、方法区 * 73、分代回收 * 74、堆和栈的区别 * 75、什么时候会触发FullGC * 76、什么是Java虚拟机?为什么Java被称作是“平台无关的编程语言”? * 77、对象分配规则 * 78、描述一下JVM加载class文件的原理机制? * 79、Java对象创建过程 * 80、简述Java的对象结构 * 81、如何判断对象可以被回收 * 82、JVM的永久代中会发生垃圾回收么 * 83、垃圾收集算法 * 84、调优命令有哪些? * 85、调优工具 * 86、Minor GC与Full GC分别在什么时候发生? * 87、你知道哪些JVM性能调优 ![image](http://www.icode9.com/i/li/?n=2&i=images/20210703/1625265122570985.jpg) ## 专题9:Mysql ![image](http://www.icode9.com/i/li/?n=2&i=images/20210703/1625265122241729.jpg) * 1、数据库存储引擎 * 2、InnoDB(B+树) * 2、TokuDB( Fractal Tree-节点带数据) * 3、MyIASM * 4、Memory * 5、数据库引擎有哪些 * 6、InnoDB与MyISAM的区别 * 7、索引 * 8、常见索引原则有 * 9、数据库的三范式是什么 * 10、第一范式(1st NF - 列都是不可再分) * 11、第二范式(2nd NF- 每个表只描述一件事情) * 12、第三范式(3rd NF- 不存在对非主键列的传递依赖) * 13、数据库是事务 * 14、SQL优化 * 15、简单说一说drop、delete与truncate的区别 * 16、什么是视图 * 17、什么是内联接、左外联接、右外联接? * 18、并发事务带来哪些问题? * 19、事务隔离级别有哪些?MySQL的默认隔离级别是? * 20、大表如何优化? * 21、水平分区 * 22、分库分表之后,id 主键如何处理 * 23、存储过程(特定功能的 SQL 语句集) * 24、存储过程优化思路 * 25、触发器(一段能自动执行的程序) * 26、数据库并发策略 * 27、MySQL 中有哪几种锁? * 28、MySQL 中有哪些不同的表格? * 29、简述在 MySQL 数据库中 MyISAM 和 InnoDB 的区别 * 30、MySQL 中 InnoDB 支持的四种事务隔离级别名称,以及逐级之间的区别? * 31、CHAR 和 VARCHAR 的区别? * 32、主键和候选键有什么区别? * 33、myisamchk 是用来做什么的? * 34、MyISAM Static 和 MyISAM Dynamic 有什么区别? * 35、如果一个表有一列定义为 TIMESTAMP,将发生什么? * 36、你怎么看到为表格定义的所有索引? * 37、LIKE 声明中的%和_是什么意思? * 38、列对比运算符是什么? * 39、BLOB 和 TEXT 有什么区别? * 40、MySQL_fetch_array 和 MySQL_fetch_object 的区别是什么? * 41、MyISAM 表格将在哪里存储,并且还提供其存储格式? * 42、MySQL 如何优化 DISTINCT? * 43、如何显示前 50 行? * 44、可以使用多少列创建索引? * 45、NOW()和 CURRENT_DATE()有什么区别? * 46、什么是非标准字符串类型? * 47、什么是通用 SQL 函数? * 48、MySQL 支持事务吗? * 49、MySQL 里记录货币用什么字段类型好 * 50、MySQL 有关权限的表都有哪几个? * 51、列的字符串类型可以是什么? * 52、MySQL 数据库作发布系统的存储,一天五万条以上的增量,预计运维三年,怎么优化? * 53、锁的优化策略 * 54、索引的底层实现原理和优化 * 55、什么情况下设置了索引但无法使用 * 56、实践中如何优化 MySQL * 57、优化数据库的方法 * 58、简单描述 MySQL 中,索引,主键,唯一索引,联合索引的区别,对数据库的性能有什么影响(从读写两方面) * 59、数据库中的事务是什么? * 60、SQL 注入漏洞产生的原因?如何防止? * 61、为表中得字段选择合适得数据类型 * 62、存储时期 * 63、对于关系型数据库而言,索引是相当重要的概念,请回答有关索引的几个问题 * 64、解释 MySQL 外连接、内连接与自连接的区别 * 65、Myql 中的事务回滚机制概述 * 66、SQL 语言包括哪几部分?每部分都有哪些操作关键 * 67、完整性约束包括哪些? * 68、什么是锁? * 69、什么叫视图?游标是什么? * 70、什么是存储过程?用什么来调用? * 71、如何通俗地理解三个范式? * 72、什么是基本表?什么是视图? * 73、试述视图的优点? * 74、NULL 是什么意思 * 75、主键、外键和索引的区别? * 76、你可以用什么来确保表格里的字段只接受特定范围里的值? * 77、说说对 SQL 语句优化有哪些方法?(选择几条) * 78、什么是乐观锁 * 79、什么是悲观锁 * 80、什么是时间戳 * 81、什么是行级锁 * 82、什么是表级锁 * 83、什么是页级锁 ## 总结 至此,文章终于到了尾声。总结一下,我们谈论了简历制作过程中需要注意的以下三个部分,并分别给出了一些建议: 1. 技术能力:先写岗位所需能力,再写加分能力,不要写无关能力; 2. 项目经历:只写明星项目,描述遵循 STAR 法则; 3. 简历印象:简历遵循三大原则:清晰,简短,必要,要有的放矢,不要海投; > 以及最后为大家准备的福利时间:简历模板+Java面试题+热门技术系列教程视频 > **[戳这里免费领取文中资料](https://docs.qq.com/doc/DSmxTbFJ1cmN1R2dB)** ![在这里插入图片描述](http://www.icode9.com/i/li/?n=2&i=images/20210703/1625265122890961.jpg) ![在这里插入图片描述](http://www.icode9.com/i/li/?n=2&i=images/20210703/1625265122679596.jpg) ![在这里插入图片描述](http://www.icode9.com/i/li/?n=2&i=images/20210703/1625265123836670.jpg)

标签:Java,Javaweb,区别,什么,JVM,线程,期末试卷,MySQL,编程技术
来源: https://blog.51cto.com/u_15288758/2972489

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有