面试--Java高级高频面试题

  1. 问题一(Linux常用服务类相关命令):
    1.  

       

  2. 问题二(git分支相关命令和实际应用):

    1. 查看分支:git branch -v
      新建分支:git branch 分支名
      合并分支:git chekout master(切换到主分支) +git merge 分支名
      切换分支:git checkou 分支名
      新建并切换分支:git checkout -b 分支名:
      删除分支:git chckout master + git branch -D 分支名
  3. 问题三(Redis持久化):

    1. RDB

    2. AOF:

  4. MySQL什么时候建立索引:

    1. 索引:帮助我们快速查找数据的数据结构

    2. 索引的优缺点:

      1. 提高检索速度,查询速度快,减少IO的次数,

      2. 对索引字段已经排好序,加快排序速度,减少cpu的消耗

    3. 索引的缺点:

      1. 对数据进行更新速度慢,因为门不仅需要维护数据表,还要 维护索引表

      2. 会占有我们的磁盘空间

    4. 索引的应用场景:

      1. 主键会自动建立索引

      2. 频繁作为条件查询的字段

      3. 外键字段

      4. 排序字段

      5. 统计或分组字段

      6. 符合索引的性价比高于单索引

    5. 不适合建立索引的情况:

      1. 表中数据特别少

      2. 条件查询用不到的字段

      3. 过滤性不好的字段

      4. 经常增删改的字段

  5. JVM垃圾回收机制:

    1. 四种算法:
    2. 默认的垃圾回收机制:

      1. jdk1.7 默认垃圾收集器Parallel Scavenge(新生代)+Parallel Old(老年代)

         

      2. jdk1.8 默认垃圾收集器Parallel Scavenge(新生代)+Parallel Old(老年代)

         

      3. jdk1.9 默认垃圾收集器G1

      4. -XX:+PrintCommandLineFlagsjvm参数可查看默认设置收集器类型

         

      5. -XX:+PrintGCDetails亦可通过打印的GC日志的新生代、老年代名称判断

    3.     

posted @ 2021-08-08 15:47  张紫韩  阅读(52)  评论(0编辑  收藏  举报