学海无涯!自学java开发要多久

2024-02-05 16:30

本文主要是介绍学海无涯!自学java开发要多久,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

第一部分 项目+自我介绍

  • 首先上来简单做一下自我介绍?

  • 然后让介绍简历里的项目,说下项目里的难点,技术架构。

  • 平时开发过程中都遇到过哪些难题?

  • 平时都这么和同事沟通?

第二部分 java基础方面

  • 首先还是老生常谈的hashmap。hashmap的set和get的时间复杂度是多少?为什么是O(1), hashmap 在jdk1.8是线程安全的吗?

  • 为什么是线程安全的?concureenthashmap了解吗?他是如何实现线程安全的?

  • 说说java泛型,为什么称java泛型为伪泛型?泛型的好处有哪些?int可以作为泛型类型吗?

  • 说一说静态***和动态***的区别?动态***的底层是怎么实现的?

  • 线程run和start的区别?两次start同一个线程会怎么样?

  • 说一下java的线程模型?说一下violate关键字?他的原理是什么?violate是线程安全的吗?说一下violate和synchronized这两个关键字的区别?

  • 说下线程池的原理?有没有在项目中用过线程池?怎么用的?核心线程和非核心线程有什么区别?你在项目里怎么确定核心线程数的。

  • 对concureent包了解吗?什么是cas?cas怎么解决ABA问题?讲一下CountDownLatch和cyclicBarrier的区别?

  • 说一下java类加载器的工作机制?讲一下JVM相关。有没有做货GC调优,讲一下这么做的?

第三部分 spring框架方面

  • BeanFactory 和 和 ApplicationContext 有什么区别?

  • 如何用基于 XML 配置的方式配置 Spring

  • 说一下springboot的启动过程?平时开发中都用哪些注解?

  • Spring 是如何快速创建产品就绪应用程序的?

  • 如何使用 Spring Boot 部署到不同的服务器?

第四部分 数据库与java中间件方面

  • redis常用的数据结构有哪几种,在你的项目中用过哪几种,以及在业务中使用的场景,?redis cluster有没有了解过,怎么做到高可用的?

  • redis集群和哨兵机制有什么区别?redis的持久化机制了解吗?你们在项目中是怎么做持久化的?遇到过redis的hotkey吗?怎么处理的?redis是单线程的吗?单线程为什么还这么快?redis实现分布式锁以及和zk实现的性能和稳定性的对比?

  • kafka的原理?怎么保证消息不丢失?

  • 索引的常见实现方式有哪些,有哪些区别?MySQL的存储引擎有哪些,有哪些区别?InnoDB使用的是什么方式实现索引,怎么实现的?说下聚簇索引和非聚簇索引的区别?

  • 大量的消息每页被消费,能否发生 oom 异常?

  • 向不存在的 exchange 发 publish 消息会发生什么?向不存在的queue 执行 consume 动作会发生什么?

  • 为什么不应该对所有的 message 都使用持久化机制?

第五部分 算法方面(总共是问了两个)

  • 一面手写的题是leetcode 106. 从中序与后序遍历序列构造二叉树,根据一棵树的中序遍历与后序遍历构造二叉树。(注意:你可以假设树中没有重复的元素。)

例如,给出 中序遍历 inorder = [9,3,15,20,7] 后序遍历 postorder = [9,15,7,20,3] 返回如下的二叉树: 3 / \ 9 20 / \ 15 7

  • 二面手写的题是 leetcode 86. 分隔链表

给定一个链表和一个特定值 x,对链表进行分隔,使得所有小于 x 的节点都在大于或等于 x 的节点之前。你应当保留两个分区中每个节点的初始相对位置。 示例: 输入: head = 1->4->3->2->5->2, x = 3 输出: 1->2->2->4->3->5

这两道算法题的答案解析就在《算法刷题LeetCode中文版.PDF》这份文档中

image

完结

Redis基于内存,常用作于缓存的一种技术,并且Redis存储的方式是以key-value的形式。Redis是如今互联网技术架构中,使用最广泛的缓存,在工作中常常会使用到。Redis也是中高级后端工程师技术面试中,面试官最喜欢问的问题之一,因此作为Java开发者,Redis是我们必须要掌握的。

Redis 是 NoSQL 数据库领域的佼佼者,如果你需要了解 Redis 是如何实现高并发、海量数据存储的,那么这份腾讯专家手敲《Redis源码日志笔记》将会是你的最佳选择。

的,那么这份腾讯专家手敲《Redis源码日志笔记》将会是你的最佳选择。

[外链图片转存中…(img-tPsjCabL-1625064391577)]

感兴趣的朋友可以通过点赞+戳这里的方式免费获取腾讯专家手写Redis源码日志笔记pdf版本!

这篇关于学海无涯!自学java开发要多久的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/681504

相关文章

JVM 的类初始化机制

前言 当你在 Java 程序中new对象时,有没有考虑过 JVM 是如何把静态的字节码(byte code)转化为运行时对象的呢,这个问题看似简单,但清楚的同学相信也不会太多,这篇文章首先介绍 JVM 类初始化的机制,然后给出几个易出错的实例来分析,帮助大家更好理解这个知识点。 JVM 将字节码转化为运行时对象分为三个阶段,分别是:loading 、Linking、initialization

Spring Security 基于表达式的权限控制

前言 spring security 3.0已经可以使用spring el表达式来控制授权,允许在表达式中使用复杂的布尔逻辑来控制访问的权限。 常见的表达式 Spring Security可用表达式对象的基类是SecurityExpressionRoot。 表达式描述hasRole([role])用户拥有制定的角色时返回true (Spring security默认会带有ROLE_前缀),去

浅析Spring Security认证过程

类图 为了方便理解Spring Security认证流程,特意画了如下的类图,包含相关的核心认证类 概述 核心验证器 AuthenticationManager 该对象提供了认证方法的入口,接收一个Authentiaton对象作为参数; public interface AuthenticationManager {Authentication authenticate(Authenti

Spring Security--Architecture Overview

1 核心组件 这一节主要介绍一些在Spring Security中常见且核心的Java类,它们之间的依赖,构建起了整个框架。想要理解整个架构,最起码得对这些类眼熟。 1.1 SecurityContextHolder SecurityContextHolder用于存储安全上下文(security context)的信息。当前操作的用户是谁,该用户是否已经被认证,他拥有哪些角色权限…这些都被保

Spring Security基于数据库验证流程详解

Spring Security 校验流程图 相关解释说明(认真看哦) AbstractAuthenticationProcessingFilter 抽象类 /*** 调用 #requiresAuthentication(HttpServletRequest, HttpServletResponse) 决定是否需要进行验证操作。* 如果需要验证,则会调用 #attemptAuthentica

Spring Security 从入门到进阶系列教程

Spring Security 入门系列 《保护 Web 应用的安全》 《Spring-Security-入门(一):登录与退出》 《Spring-Security-入门(二):基于数据库验证》 《Spring-Security-入门(三):密码加密》 《Spring-Security-入门(四):自定义-Filter》 《Spring-Security-入门(五):在 Sprin

Java架构师知识体认识

源码分析 常用设计模式 Proxy代理模式Factory工厂模式Singleton单例模式Delegate委派模式Strategy策略模式Prototype原型模式Template模板模式 Spring5 beans 接口实例化代理Bean操作 Context Ioc容器设计原理及高级特性Aop设计原理Factorybean与Beanfactory Transaction 声明式事物

这15个Vue指令,让你的项目开发爽到爆

1. V-Hotkey 仓库地址: github.com/Dafrok/v-ho… Demo: 戳这里 https://dafrok.github.io/v-hotkey 安装: npm install --save v-hotkey 这个指令可以给组件绑定一个或多个快捷键。你想要通过按下 Escape 键后隐藏某个组件,按住 Control 和回车键再显示它吗?小菜一碟: <template

Hadoop企业开发案例调优场景

需求 (1)需求:从1G数据中,统计每个单词出现次数。服务器3台,每台配置4G内存,4核CPU,4线程。 (2)需求分析: 1G / 128m = 8个MapTask;1个ReduceTask;1个mrAppMaster 平均每个节点运行10个 / 3台 ≈ 3个任务(4    3    3) HDFS参数调优 (1)修改:hadoop-env.sh export HDFS_NAMENOD

Java进阶13讲__第12讲_1/2

多线程、线程池 1.  线程概念 1.1  什么是线程 1.2  线程的好处 2.   创建线程的三种方式 注意事项 2.1  继承Thread类 2.1.1 认识  2.1.2  编码实现  package cn.hdc.oop10.Thread;import org.slf4j.Logger;import org.slf4j.LoggerFactory