精华内容
下载资源
问答
  • java初级程序员面试

    2020-01-29 12:36:39
  • Java初级程序员面试必备的基础知识总结.docx
  • Java初级程序员面试必备的基础知识总结.zip
  • Java初级程序员面试总结(一)--JVM篇

    千次阅读 2020-03-15 14:52:54
    Java初级程序员面试总结(一) 引言: 我是一个菜鸟程序员,坐标HZ,最近在准备面试,所以想写点博客进行总结. Q1: JVM你了解么? Answer: JVM分为5个区:栈,堆,方法区,本地方法区,程序计数器.在JDK1.8时,堆的永久代被转移到...

    Java初级程序员面试总结(一)

    引言:
    我是一个菜鸟程序员,坐标HZ,最近在准备面试,所以想写点博客进行总结.
    Q1: JVM你了解么?
    Answer: JVM分为5个区:栈,堆,方法区,本地方法区,程序计数器.在JDK1.8时,堆的永久代被转移到元数据空间了.在栈区可以存放线程的栈帧,在堆区存放new的对象,又分成新生代,老年代,永久代.在方法区存放了常量,字节码文件等.在本地方法区存放除java外的其他语言文件,如c/c++.程序计数器是记录每条程序的执行顺序的.堆和方法区为共享区,其他为私有区.
    Q2: JVM调优你会吗?
    Answer: JVM可以设置Xmx最大堆内存,Xms初始堆内存,可以设置新生代和老年代的比例,Eden和Survivor的比例,选择相应的垃圾回收器如G1,CMS+ParNew,并行回收器组合等.
    Q3: G1回收器你了解吗?
    Answer: G1采用逻辑分区,新增H区,让创建的超大临时变量直接进入H区,不再在进入Old区避免了频繁调用full GC.采用Rset方式,将分区分成多个Card,每个Card516KB,进行相互的引用,加快了存活对象的查找效率.垃圾回收流程为初始标记STW,区域扫描,并发标记,最终标记STW,清除垃圾STW.
    Q4: tomcat调优你会吗?
    Answer: tomcat调优可以关闭AJP协议,因为现在用的都是nginx.可以设置线程池参数,比如KeepAlive,最大/核心线程数,工作队列.进行JVM调优.优化连接器,缓存优化,设置模式为NIO


    以上为比较基础的常见问题.
    JVM操作工具:VisualVM+MAT(dump堆内存文件,可查看对象的内存占用情况,依赖关系等信息),Jstatck(跟踪堆栈信息),JConsole(监控工具)
    以上工具可以在jdk/bin中找到

    展开全文
  • Java初级程序员面试总结(二) 引言: 我是一个菜鸟程序员,坐标HZ,以下为整理的面试题. Q1: Hashmap源码你看过没? Answer: hashmap在jdk1.8之前,采用数组+链表的结构.在jdk1.8及以后,采用数组+链表/红黑树的结构....

    Java初级程序员面试总结(二)

    引言:
    我是一个菜鸟程序员,坐标HZ,以下为整理的面试题.
    Q1: Hashmap源码你看过没?
    Answer: hashmap在jdk1.8之前,采用数组+链表的结构.在jdk1.8及以后,采用数组+链表/红黑树的结构.hashmap在1.8及以后的版本,初始容量为0.在第一次put时,如果初始容量为0,那么容量修改为16.调用本地的hashcode方法计算hash值.将hash值异或高16位,使其重复参与运算.再通过与上数组的length-1,得到数组的索引值.如果key为null,调用响应的方法进行存储.不为null,调用equals方法比较key是否相同,如果相同,进行覆盖.如果不同,发生hash碰撞.如果大于等于8,放到红黑树中.当进行树形化且容量小于64时,发生扩容,扩容2倍.如果长度不大于等于8,放到链表中.如果hashmap Entry数量大于容量负载因子(默认16),则发生扩容.当树形化长度小于等于6时,退回链表.hashmap在1.8之前时,entry数量大于等于容量负载因子(默认16)且发生hash碰撞时,进行扩容,扩容2倍.
    Q2: 快速失败和安全失败的区别?
    Answer: 快速失败是并发修改异常,常见于Arraylist,原理是在for循环时,其count与之前的count不同,当其进行add或者remove时,会修改count值.这样子,原先的count值与for循环中的count不同,抛出此异常.可以使用迭代器或者安全失败解决.安全失败是并发包中的,复制原先循环的内容,使用add或者remove时修改复制的内容.最后结束循环后完成修改.
    Q3: ConcurrentHashMap1.7和1.8的区别
    Answer: 1.7采用分段锁机制,将entry一段段锁起来,分成16个锁,每个锁放入2个entry,其中默认的8个没有entry,有新的entry再进行分配.1.8采用CAS+sync的办法,使用CompareAndSwap方法,用内存值V比较旧值A,如果相同,用新值B代替旧值A.其中会产生ABA问题,可以使用Version来解决.
    Q4: 什么map适合存null?
    Answer: Hashmap,其他map都不能存null.在源码中Concurrent,Table等都会检查key和value是否包含null,包含抛出空指针异常


    集合源码有兴趣的可以看一下,面试主要问Hashmap,ConcurrentHashMap,ArrayList等
    主要是数组,链表,树,栈,队列等数据结构

    展开全文
  • Java初级程序员面试总结(五) 引言: 我是一个菜鸟程序员,坐标HZ,今天讲讲Redis,谈谈面试常见问题 Q1: 你们怎么用Redis做什么? Analysis: 表面问Redis作用,实际并不是希望你讲的多NB,而是从一个点切入,深刻认识Redis,...

    Java初级程序员面试总结(五)

    引言:
    我是一个菜鸟程序员,坐标HZ,今天讲讲Redis,谈谈面试常见问题
    Q1: 你们怎么用Redis做什么?
    Analysis: 表面问Redis作用,实际并不是希望你讲的多NB,而是从一个点切入,深刻认识Redis,展现你的运用能力.
    Answer-false: 我在我的项目中使用了Redis做缓存,做计数器,做排行榜,做消息队列,讲XXX怎么用的,为什么这么用(70分)
    Answer-true: 我在我的项目做了XX模块用到了你说的Redis,因为业务需求的发展,引入了Redis技术,用来做XX功能,并考虑到持久化,缓存穿透/击穿/雪崩,数据同步,内存淘汰等问题,做了XX优化.(100分)
    Q1: 你们XX优化,能详细说说吗?
    Analysis: 此时,你的就可以细说解决持久化,缓存穿透/击穿/雪崩,数据同步,内存淘汰等问题的办法了,由浅入深.
    Answer: 我们采用RDB+AOF的混合方式进行持久化,RDB作为AOF失败后的数据备份,快速重启,而都开启的话,默认先读AOF文件,因为AOF往往比RDB完整.
    Q1: 你们为什么要用Redis做XX,不用XXX做?
    Analysis: 此时,你需要比较其他产品的优劣,比如MySQL,Memcached等,从成本,数据结构,持久化,性能方面考虑
    Answer: Redis和Memcached优劣,Redis支持8种数据结构,支持数据持久化,支持分布式锁,支持集群,事务.Memcached只支持KV存储,不支持持久化,Memcached是提供CAS的,性能上Memcached更快.
    Q1: Redis实现分布式锁的原理?
    Analysis: 回答这个问题可以想想Redis的分布式锁的缺点,比如Redis宕机了
    Answer: Redis根据hash算法选择一个节点执行setnx加锁,通常设置锁会指定过期时间,然后同步到所有节点上,watch dog会定期查看是否存在锁,如果存在,则下次继续查看.如果期间Redis宕机,会进入死锁.


    如果想了解更多Redis信息,我可以出第二篇

    展开全文
  • Java初级程序员面试总结(三) 引言: 我是一个菜鸟程序员,坐标HZ,面试总结系列将无期更新,有疑问的朋友可以留言 Q1: 你知道Java有哪些锁? Answer: 乐观锁和悲观锁.乐观锁是CAS(CompareAndSwap).悲观锁是Lock锁,偏向锁,...
  • Java初级程序员面试总结(四) 引言: 我是一个菜鸟程序员,坐标HZ,如果有想让我写的博客,可以留言,我可以尽量满足你们,每期4个问题. Q1: 你知道Http协议的执行流程吗? Answer: 1.进行DNS解析,进行CDN加速,解析url,为...
  • java初级程序员面试

    2019-07-05 16:45:55
    **1.java的8种基本数据类型 byte 1字节 ,short 2字节,int 4字节,double 字节, flort 4字节, long 8字节,boolean jvm位定义,char 2字节 2.面向对象的三大特性 2.1 封装: 将内部实现方法隐藏起来对外只提供一个...
  • 1.一个java源文件中可以声明多个class类,但是只能有一个public类,而且其类名必须和源文件名称相同。 2.jdk = jre + java开发工具(javac,java,javadoc...);jre = JVM+ java核心类库。 3.命名规范:1>包名...
  • Java初级程序员面试必备的基础知识总结

    万次阅读 多人点赞 2018-01-25 22:24:16
    1. 简述Java的基本历史 java起源于SUN公司的一个GREEN的项目,其原先目的是:为家用消费电子产品发送一个信息的分布式代码系统,通过发送信息控制电视机、冰箱等   1. 简单写出Java特点,写出5个以上,越多越...
  • Java初级程序员面试题大全

    千次阅读 2014-12-10 21:38:58
    1.Java中的进制: (在线阅读地址:http://www.4spaces.org/2014/12/07/job-audition-1.html) 1)十进制 à 二进制 例:100(10进制) = ?(2进制) 解: 100 = 64 + 32 + 4 = 2^6 + 2^5 ...
  • /** 该需要注意的就是截取字符串的时候包头不包尾 @author KingShy */ public class T11 { public static void main(String[] args) { // TODO Auto-generated method stub String a = "newspaper";...
  • public class T03 { public static void main(String[] args) { // TODO Auto-generated method stub int i,j,k,l=0; k=l++;//k=0; ++在后先赋值再做++运算!... System.out.println("K值是:"+k);...
  • package com.test; /** 输出为0 @author KingShy 静态变量不赋初始值可以在main方法中直接使用, 实例变量不赋初始值则需要通过创建对象调用才可以。 */ public class T07 { int j; static int i;...
  • 1、Java的八种数据类型? 这个没问题 boolean byte char short int long float double 2、Int几个字节? 4字节 Int的包装类是? Integer类 3、引申 Integer类继承了哪个类、实现了哪些类(这个真的没有...
  • java面试题大全-葵花宝典(给刚刚毕业没有经验的人准备的,有了它基本笔试可以搞定了)
  • JAVA中级程序员必备面试题 如何创建一个有序集合 用jdbc写一段有事务的代码 简述servletjspStruts2springMVC是否是线程安全的为什么 如何避免浏览器缓存 radisehcache两种缓存有什么区别radis如何存放一个java对象 ...
  • 不管你是Java初学者还是有一两年工作经验的,这些知识点肯定会对你造成困扰,建议你看看!
  • Java程序员面试三十二问.doc Java经典试题及答案.doc java面试笔试题大汇总.doc 企业面试题精选.doc 9JAVA代码查错.doc jdbc.doc Struts.doc Hibernate?.doc
  • 使用初级程序员,包括面试常考及常问问题,以及项目开发初期经常遇到的小的问题记录,将不断更新。
  • 本来想分享毕业生和初级程序员如何进大公司的经验,但后来一想,人各有志,有程序员或许想进成长型或创业型公司或其它类型的公司,所以就干脆来分享些提升技能和通过面试的技巧,技巧我讲,公司你选,两厢便利。...
  • 这博客是对自己学习的一点点总结及记录,如果您对 Java、算法 感兴趣,可以关注我的动态,我们一起学习。 用知识改变命运,让我们的家人过上更好的生活。 相关文章: 20道你必须要背会的微服务面试题 文章目录1、&...
  • 初级java程序员面试常见问题

    千次阅读 2018-07-09 18:03:17
    对于初级程序员面试,前期准备是至关重要的,Java基础是毋庸置疑的,面向对象思想要谨记,数据库,集合,io,多线程,spring定要理解掌握,有自己的一贯说法,自己做过的项目起码要能说出个123来,此外,要想提升...
  • 我们刚学完java,出去找工作面试的时候,面试题也是各种各样,这里,我整理了一些java中常见面试题,同时也是对基础的一个掌握,分享出来给大家一起学习! 1、面向对象的特征有哪些方面? 答:面向对象的特征主要有...
  • 初级程序员面试常见问题

    千次阅读 2018-06-13 10:12:53
    本人将这几天面试的题目总结一些,如果出现错误请指正,谢谢!1,谈一谈spring。 答:spring是为java程序开发提供的综合性的基础java开发平台,它提供了从表现层SpringMVC到业务层Spring再到持久层springData的一套...
  • 时间飞逝极快,一眨眼自己已经大三了,...7月之前要找到实习岗位,为此准备把这3年学的JAVA知识整理一下,融汇贯通,查缺补漏,JAVA漫漫路上更上一层,也为以后的面试做一下准备。下面是我将要每天要更新一篇博客...
  • 这些都是本人在2016年中面试过程中收集的题目,希望能对大家有所帮助,只限于初级程序员
  • 首先,我们要明白Java程序员也有多个从业方向,像Web开发、大数据开发、各种后端开发等,如果有一定目标的同学在面试前,可以有针对性的做好准备。...学习能力也是用人单位非常看重的能力之一,尤其是面试初级程序员...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 629
精华内容 251
关键字:

java初级程序员面试

java 订阅