1 程序零世界

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 8w+

分享20+互联网公司面试经验总结【java方向】

20+互联网公司面试经验总结【java方向】其实面试多了你会发现一个规律,如果一个公司你一面过的很顺利,后面不管三面四面还是五面,都会比较顺利。因为大家的提问方式,角度都很类似,很多时候都是在跟不同的面试官说同样的话。多数的公司总体上面试都是以自我介绍+项目介绍+项目细节/难点提问+基础知识点考核+算法题这个流程下来的。有些公司可能还会问几个实际的场景类的问题,这个环节阿里是必问的,这种问题通常是没有正确答案的,就看个人的理解,个人的积累了。剩下的就没啥了,都是换汤不换药,聊项目就看.

2020-09-29 15:45:00

分享蚂蚁金服Java岗-社招5面历程

话不多说,上题!一面: 介绍一下自己; 问项目经历, 聊"数据同步" 接着聊上了 K8S 的项目 有没有什么钻研得比较深的技术? kubernetes 的架构是怎么样的? golang 与 java 的比较 golang 的 gc 算法 怎么扩展 kubernetes scheduler, 让它能 handle 大规模的节点调度? 你有什么想问我的? 二面: 先聊了聊项目。 给 Prometheus

2020-09-28 20:42:34

京东Java技术三面分享

前两天整理了阿里巴巴的面试资料,今天整理了京东的三面资料,祝大家都能找到好工作!加油!一面 首先是项目部分,问的比较细; 如果一个对象有多个方法加了synchronized,那么该对象有几把锁 答:对象锁是在一个类的对象上加的的锁,只有一把,不管有几个方法进行了同步。这些同步方法都共有一把锁,只要一个线程获得了这个对象锁,其他的线程就不能访问该对象的任何一个同步方法。NIO与AIO的区别以及各自的作用;(1)Java NIO :同步非阻塞,服务器实现模式为一个请求一个线程,

2020-09-27 20:34:35

3年Java经验,跳槽天猫,三面成功拿到offer!

很多人去面试之前都很做足准备,下面就分享一次,从面试中,其实可以看得出来现在的公司对于面试者的知识体系要求,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。天猫一面:第一步先自我介绍?介绍自己的项目经验和个人的擅长点,面试官主要考察你的表达能力和语言精简能力。第二步:项目中做了什么,难点在哪里?主要是想了解参与过技术难度最大的项目难点,技术难点在哪里,你是怎么来解决的,考察项目经验(技术难度)。第三步:开始切入技术面试正题:Java的线程池说一下,各个参数的作用,如何进.

2020-09-25 20:57:52

阿里巴巴java技术岗三面分享

阿里巴巴java技术岗三面分享今天花时间整理了阿里巴巴Java岗技术三面的资料,分给大家做参考,祝大家都能找到好工作!加油!一面1、自我介绍,讲讲求职意向和擅长的技能2、Tomcat的基本架构是什么?3、JVM调优,工作中怎么用,GC算法和回收策略有哪些4、Java中线程池是如何实现的? 创建线程池的几个核心构造参数是什么?5、Volatile和Synchronize的区别?6、GC的机制是什么?垃圾回收器的基本原理是还说呢么?是否可以立即回收内存?怎么样主动的通知JVM

2020-09-24 21:34:52

JAVA 9 新特性

OpenJDK上已经出现了关于下一个主版本JAVA 9的改进建议(JEP)。与以往不同,Oracle在这次谈及了一些真正的特性。而早期对于JDK9的声明仅限于“bug修复和一些小的改进”。新API和性能特性:下一个release版本将推出三个全新的API:1、轻量级的JSON API(JEP 198):用于读写JSON文档和数据流。2、HTTP 2客户端(JEP 110):支持HTTP2.0和websocket,用以替代原有的HttpURLConnection。3、进程API更新(JEP 102)

2020-08-30 16:25:47

Java中一个普通的循环为何从10开始到99连续相乘会得到0?

这是一块非常简单的Java代码片段:public class HelloWorld{ public static void main(String []args){ int product = 1; for (int i = 10; i <= 99; i++) { product *= i; } System.out.println(product); }}为什么得出的结果是0

2020-08-28 19:27:21

笑看35岁以上的大龄程序员官方斗图,我就看看,不~说话!哈哈

每天面对一堆堆复杂的代码我相信许多热爱编程的小伙伴也一样顶不住枯燥吧!那么小编今天就放一些有关程序员的一些有趣的趣图,给大家解解闷吧!最后再来给程序员提几点建议:我奉劝那些学习技术的朋友,千万不要拿科举考试样的心态去学习技术,对技术的学习几近的痴迷,想掌握所有所有的技术,以让自己成为技术领域的权威和专家,以在必要的时候或是心里不畅快的时候到网上对着菜鸟说自己是前辈。技术仅仅是一个工具,是你在人生一个阶段生存的工具,你可以一辈子喜欢他,但最好不要一辈子靠它生存。最后,给大家推

2020-08-27 19:51:40

作为一个Java程序员连简单的分页功能都会写,你好意思嘛!

今天想说的就是能够在我们操作数据库的时候更简单的更高效的实现,现成的CRUD接口直接调用,方便快捷,不用再写复杂的sql,带吗简单易懂,话不多说上方法1、Utils.java工具类中的方法1 /** 2 * 获取Sort 3 * 4 * @param direction - 排序方向 5 * @param column - 用于排序的字段 6 */ 7 public static Sort getSort(String direction,String column){ 8

2020-08-26 21:09:49

怎么样创建的线程才是安全的呢?带着疑问看文章

首先来看一个问题:下面这个方法是线程安全的吗?如何才能让这个方法变成线程安全的?public class MyCount { private static int counter = 0; public static int getCount(){ return counter++; }}首先,这个方法不是线程安全的,因为counter++操作不是一个原子性的操作,也就意味着counter++操作包含了好几个原子性的操作。实际上,counter++包含了三个原子性的操作,第一步

2020-08-24 20:41:08

Java 8新的时间日期库,这二十个案例看完你还学不会算我的!!!

Java对日期,日历及时间的处理一直以来都饱受诟病,尤其是它决定将java.util.Date定义为可修改的以及将SimpleDateFormat实现成非线程安全的。看来Java已经意识到需要为时间及日期功能提供更好的支持了,这对已经习惯使用Joda时间日期库的社区而言也是件好事。关于这个新的时间日期库的最大的优点就在于它定义清楚了时间日期相关的一些概念,比方说,瞬时时间(Instant),持续时间(duration),日期(date),时间(time),时区(time-zone)以及时间段(Period)

2020-08-23 21:34:30

还不会使用Java ThreadLocal落后了吧!

Java中的ThreadLocal类允许我们创建只能被同一个线程读写的变量。因此,如果一段代码含有一个ThreadLocal变量的引用,即使两个线程同时执行这段代码,它们也无法访问到对方的ThreadLocal变量。如何创建ThreadLocal变量以下代码展示了如何创建一个ThreadLocal变量:private ThreadLocal myThreadLocal = new ThreadLocal();我们可以看到,通过这段代码实例化了一个ThreadLocal对象。我们只需要实例化对象一次,

2020-08-21 20:49:27

在我们使用Redis作为一个LRU缓存的时候,怎么做才能更高效

当用Redis作为一个LRU存储时,有些时候是比较方便的,在你增添新的数据时会自动驱逐旧的数据。这种行为在开发者论坛是非常有名的,因为这是流行的memcached系统的默认行为。LRU实际上只是支持驱逐的方式之一。这页包含更多一般的Redis maxmemory指令的话题用于限制内存使用到一个定额,同时它也深入的涵盖了Redis所使用的LRU算法,实际上是精确LRU的近似值。一、Maxmemory设置指令Maxmemory设置指令用于配置Redis的数据集使用指定量的内存。可以用redis conf.

2020-08-20 19:46:25

对java程序员来说时间格式永远让人挠头来看Java Date Time 教程-时间测量

在Java中,用System.currentTimeMillis()来测量时间最方便。你要做的是在某些操作之前获取到时间,然后在这些操作之后你想要测量时间,算出时间差。下面是一个例子:long startTime = System.currentTimeMillis();callOperationToTime();long endTime = System.currentTimeMillis();long totalTime = endTime - startTime;现在变量totalTi

2020-08-19 20:07:36

并发编程中是如何降低锁粒度的,怎么做到性能优化!

在高负载多线程应用中性能是非常重要的。为了达到更好的性能,开发者必须意识到并发的重要性。当我们需要使用并发时, 常常有一个资源必须被两个或多个线程共享。在这种情况下,就存在一个竞争条件,也就是其中一个线程可以得到锁(锁与特定资源绑定),其他想要得到锁的线程会被阻塞。这个同步机制的实现是有代价的,为了向你提供一个好用的同步模型,JVM和操作系统都要消耗资源。有三个最重要的因素使并发的实现会消耗大量资源,它们是:上下文切换内存同步阻塞为了写出针对同步的优化代码,你必须认识到这三个因素以及如何减少它们

2020-08-18 21:06:41

一些Java中不为人知的特殊方法,学完后面试官可能都没你知道的多!

如果你用过反射并且执行过getDeclaredMethods方法的话,你可能会感到很吃惊。你会发现出现了很多源代码里没有的方法。如果你看一下这些方法的修饰符的话,可能会发现里面有些方法是volatile的。顺便说一句,如果在Java面试里问到“什么是volatile方法?”,你可能会吓出一身冷汗。正确的答案是没有volatile方法。但同时,getDeclaredMethods()或者getMethods()返回的这些方法,Modifier.isVolatile(method.getModifiers())

2020-08-17 21:23:12

Java中同步的基本概念监视器–最简单粗暴的理解方法

大学有一门课程叫操作系统,学习过的同学应该都记得,监视器是操作系统实现同步的重要基础概念,同样它也用在JAVA的线程同步中,这篇文章用一种类推的思想解释监视器”monitor”。1.什么是监视器监视器可以看做是经过特殊布置的建筑,这个建筑有一个特殊的房间,该房间通常包含一些数据和代码,但是一次只能一个消费者(thread)使用此房间,当一个消费者(线程)使用了这个房间,首先他必须到一个大厅(Entry Set)等待,调度程序将基于某些标准(e.g. FIFO)将从大厅中选择一个消费者(线程),进入特

2020-08-16 19:38:07

Java中的策略模式,完成一个简单地购物车,两种付款策略实例教程

策略模式是一种行为模式。用于某一个具体的项目有多个可供选择的算法策略,客户端在其运行时根据不同需求决定使用某一具体算法策略。策略模式也被称作政策模式。实现过程为,首先定义不同的算法策略,然后客户端把算法策略作为它的一个参数。使用这种模式最好的例子是Collection.sort()方法了,它使用Comparator对象作为参数。根据Comparator接口不同实现,对象会被不同的方法排序。本文例子是,完成一个简单地购物车,两种付款策略可供选择,一为信用卡,另外一种为Paypal。首先创建策略接口,在本

2020-08-14 20:59:03

Java中的注解及自定义注解你用的怎么样,能不能像我这样应用自如?

Java注解提供了关于代码的一些信息,但并不直接作用于它所注解的代码内容。在这个教程当中,我们将学习Java的注解,如何定制注解,注解的使用以及如何通过反射解析注解。Java1.5引入了注解,当前许多java框架中大量使用注解,如Hibernate、Jersey、Spring。注解作为程序的元数据嵌入到程序当中。注解可以被一些解析工具或者是编译工具进行解析。我们也可以声明注解在编译过程或执行时产生作用。在使用注解之前,程序源数据只是通过java注释和javadoc,但是注解提供的功能要远远超过这些。注解

2020-08-13 19:44:13

Java 8中Lambda表达式默认方法的模板方法模式,你够了解么?

为了以更简单的术语描述模板方法,考虑这个场景:假设在一个工作流系统中,为了完成任务,有4个任务必须以给定的执行顺序执行。在这4个任务中,不同工作流系统的实现可以根据自身情况自定义任务的执行内容。模板方法可以应用在上述场景中:将工作流系统的4个核心任务封装到抽象类当中,如果任务可以被自定义,则将可自定义的任务推迟到子类中实现。代码实现:/** * Abstract Workflow system */abstract class WorkflowManager2{ public vo

2020-08-12 19:36:21

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv3
    勤写标兵Lv3
    授予每个自然周发布7篇到8篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。