【关于基础】——-1、玩好JDK,面试不用愁。(附JAVA知识体系图)

六年面试经验来分享JAVA基础面试题 来源 | 极链AI云(性价比最高的共享GPU算力平台,双十活动进行中 10.9-10.11,充值就送!最多可送2500元现金券!免费试用地址:https://cloud.videojj.com/) 1.面向对象和面向过程的区别 面向过程 优点:性能比面向对象高,因为类调用时需要实例化,开销比较大,比较消耗资源。比如单片机、嵌入式开发、Linux/Unix,等一般采用面向过程开发,性能是最重要的因素。 缺点:没有面向对象易维护、易复用、易扩展 面向对象 优点:易维护、易复用、易扩展,由于面向对象有 阅读详情

一日,LZ在群里发话,“招人啦。”

  然某群友曰,“群主,俺想去。”

  LZ回之,“你年几何?”

  群友曰,“两年也。”

  LZ憾言之,“惜了,三至五为佳。然如汝有扎实之基础,且附一技之长,倒也并非不可呀。”

  群友惑,问之,“何为一技之长?”

  LZ抚须答曰,“皆可,吾之一技即为写。”

  群友又问之,“何为基础扎实?”

  LZ抚**答曰,“玩好JDK!”

  

引言

  

  好了,LZ终于特么可以说人话了,请原谅LZ的文言文不好,这逼装的好累。其实很多人对于公司的招聘要求中写的,要有“扎实的Java基础”,都很迷茫。

  这特么到底啥意思?什么东西算作Java基础?学到什么程度才算扎实?

  这些问题的答案,LZ已经用文言文告诉你了,咳咳,答案就是玩好JDK就可以了。

  不过JDK这东西包含的东西实在太多,群里的猿友还是拎不清到底应该学哪个,所以,LZ就专门写一篇文章,来讲一讲JDK应该怎么玩。

  或许有的猿友会问,“林萧是谁?”

  恩,问得好!林萧就是某程序员小说的主角啦,传言无所不知,看看你就知道咯。

  

玩好JDK

  

  在详细讲解JDK之前,LZ首先要强调下,本文的内容,都是LZ个人的主观判断。因此,各位猿友务必结合自己的判断之后,再决定是否要学习,以及学习到什么程度。

  此外,本文只是告诉你学什么,学到什么程度,本文不会包含太多具体的技术细节讲解。

  JDK其实就是Java SE Development Kit的缩写,要玩好这东西可不简单。

JDK主要包含了三部分,

第一部分就是Java运行时环境,这其实就是JVM。

此外,

第二部分就是Java的基础类库,这个类库的数量还是非常可观的。

最后,

第三部分就是Java的开发工具,它们都是辅助你更好的使用Java的利器。

  那么很显然,要玩好JDK,就是要玩好JDK的这三部分。接下来,咱们就逐个的来说一下,每一个部分要学什么,学到什么程度。

 

  第一部分:Java运行时环境

  这一部分其实就是常说的jre,而它的核心其实就一个东西,就是JVM。

  JVM这个东西,它的重要性LZ不想再强调了,在之前的那篇《回答阿里社招面试如何准备,顺便谈谈对于Java程序猿学习当中各个阶段的建议》中,LZ就说过,JVM那本书甚至比《Thinking in java》还重要,这已经足见LZ多么看重JVM了。

  当然了,只是LZ看重,当然没什么卵用,但只要Java稍微高级一点点的职位,这部分基本上都是面试必问内容,这更加说明了JVM的重要性。

  所以,对于JVM,没什么可说的,就是往死里学,往死里研究,能有多深就多深!

 

  第二部分:Java的基础类库

  Java的基础类库从你刚开始学Java就开始接触了,但是,直到你结束整个Java生涯,你都不一定能把所有的类都见一遍。

  这说明了什么?是不是说明了Java基础类库的庞大?

  错!大错特错!这其实真正说明的是,有很多类你完全不必要care它们,因为它们从你接触Java到放弃,都不一定能接触到。

  所以,搞清楚哪些类重要,哪些类不重要,就非常有必要了。这可以让你以最短的时间,做最有价值的事。

  首先我们来看看,Java基础类库的包都有哪些,为了使得本文更有代表性,我们取JDK6的包列表。

java.applet 
java.awt 
java.awt.color 
java.awt.datatransfer 
java.awt.dnd 
java.awt.event 
java.awt.font 
java.awt.geom 
java.awt.im 
java.awt.im.spi 
java.awt.image 
java.awt.image.renderable 
java.awt.print 
java.beans 
java.beans.beancontext 
java.io 
java.lang 
java.lang.annotation 
java.lang.instrument 
java.lang.management 
java.lang.ref 
java.lang.reflect 
java.math 
java.net 
java.nio 
java.nio.channels 
java.nio.channels.spi 
java.nio.charset 
java.nio.charset.spi 
java.rmi 
java.rmi.activation 
java.rmi.dgc 
java.rmi.registry 
java.rmi.server 
java.security 
java.security.acl 
java.security.cert 
java.security.interfaces 
java.security.spec 
java.sql 
java.text 
java.text.spi 
java.util 
java.util.concurrent 
java.util.concurrent.atomic 
java.util.concurrent.locks 
java.util.jar 
java.util.logging 
java.util.prefs 
java.util.regex 
java.util.spi 
java.util.zip 
javax.accessibility 
javax.activation 
javax.activity 
javax.annotation 
javax.annotation.processing 
javax.crypto 
javax.crypto.interfaces 
javax.crypto.spec 
javax.imageio 
javax.imageio.event 
javax.imageio.metadata 
javax.imageio.plugins.bmp 
javax.imageio.plugins.jpeg 
javax.imageio.spi 
javax.imageio.stream 
javax.jws 
javax.jws.soap 
javax.lang.model 
javax.lang.model.element 
javax.lang.model.type 
javax.lang.model.util 
javax.management 
javax.management.loading 
javax.management.modelmbean 
javax.management.monitor 
javax.management.openmbean 
javax.management.relation 
javax.management.remote 
javax.management.remote.rmi 
javax.management.timer 
javax.naming 
javax.naming.directory 
javax.naming.event 
javax.naming.ldap 
javax.naming.spi 
javax.net 
javax.net.ssl 
javax.print 
javax.print.attribute 
javax.print.attribute.standard 
javax.print.event 
javax.rmi 
javax.rmi.CORBA 
javax.rmi.ssl 
javax.script 
javax.security.auth 
javax.security.auth.callback 
javax.security.auth.kerberos 
javax.security.auth.login 
javax.security.auth.spi 
javax.security.auth.x500 
javax.security.cert 
javax.security.sasl 
javax.sound.midi 
javax.sound.midi.spi 
javax.sound.sampled 
javax.sound.sampled.spi 
javax.sql 
javax.sql.rowset 
javax.sql.rowset.serial 
javax.sql.rowset.spi 
javax.swing 
javax.swing.border 
javax.swing.colorchooser 
javax.swing.event 
javax.swing.filechooser 
javax.swing.plaf 
javax.swing.plaf.basic 
javax.swing.plaf.metal 
javax.swing.plaf.multi 
javax.swing.plaf.synth 
javax.swing.table 
javax.swing.text 
javax.swing.text.html 
javax.swing.text.html.parser 
javax.swing.text.rtf 
javax.swing.tree 
javax.swing.undo 
javax.tools 
javax.transaction 
javax.transaction.xa 
javax.xml 
javax.xml.bind 
javax.xml.bind.annotation 
javax.xml.bind.annotation.adapters 
javax.xml.bind.attachment 
javax.xml.bind.helpers 
javax.xml.bind.util 
javax.xml.crypto 
javax.xml.crypto.dom 
javax.xml.crypto.dsig 
javax.xml.crypto.dsig.dom 
javax.xml.crypto.dsig.keyinfo 
javax.xml.crypto.dsig.spec 
javax.xml.datatype 
javax.xml.namespace 
javax.xml.parsers 
javax.xml.soap 
javax.xml.stream 
javax.xml.stream.events 
javax.xml.stream.util 
javax.xml.transform 
javax.xml.transform.dom 
javax.xml.transform.sax 
javax.xml.transform.stax 
javax.xml.transform.stream 
javax.xml.validation 
javax.xml.ws 
javax.xml.ws.handler 
javax.xml.ws.handler.soap 
javax.xml.ws.http 
javax.xml.ws.soap 
javax.xml.ws.spi 
javax.xml.ws.wsaddressing 
javax.xml.xpath 
org.ietf.jgss 
org.omg.CORBA 
org.omg.CORBA_2_3 
org.omg.CORBA_2_3.portable 
org.omg.CORBA.DynAnyPackage 
org.omg.CORBA.ORBPackage 
org.omg.CORBA.portable 
org.omg.CORBA.TypeCodePackage 
org.omg.CosNaming 
org.omg.CosNaming.NamingContextExtPackage 
org.omg.CosNaming.NamingContextPackage 
org.omg.Dynamic 
org.omg.DynamicAny 
org.omg.DynamicAny.DynAnyFactoryPackage 
org.omg.DynamicAny.DynAnyPackage 
org.omg.IOP 
org.omg.IOP.CodecFactoryPackage 
org.omg.IOP.CodecPackage 
org.omg.Messaging 
org.omg.PortableInterceptor 
org.omg.PortableInterceptor.ORBInitInfoPackage 
org.omg.PortableServer 
org.omg.PortableServer.CurrentPackage 
org.omg.PortableServer.POAManagerPackage 
org.omg.PortableServer.POAPackage 
org.omg.PortableServer.portable 
org.omg.PortableServer.ServantLocatorPackage 
org.omg.SendingContext 
org.omg.stub.java.rmi 
org.w3c.dom 
org.w3c.dom.bootstrap 
org.w3c.dom.events 
org.w3c.dom.ls 
org.xml.sax 
org.xml.sax.ext 
org.xml.sax.helpers
View Code

  怎么样?是不是被吓到了?这么多包,而且还这么多陌生的包名,有的连见都没见过,这特么怎么玩?

  不要着急,LZ先带你把这些包给分下级别,LZ将这些包一共分为四个级别。

 

  第一级别:精读源码

  该级别包含的包如下:

java.io
java.lang
java.util
View Code

  精读源码,这是要求最高的级别。但是,要求你精读源码并不意味着,这些类就是最重要的。而是因为,LZ觉得这些类比较常用,而且比较简单,看看它们的源码有助于锻炼你看源码的感觉,也了解一下大神们写代码的风格。

  看这些源码的目的,更多是为了增加你的阅读代码能力。而且,LZ这里必须要强调一下,像Exception和Error这一类的,就不用读源码了,亲。

  其实上面三个包都有一个共同点,那就是这三个包,基本上都是你最常用的了。lang包不用说了,你随便写点啥都得用到,io包和util包也是你平时读写文件和使用数据结构必不可少的。

  看源码从这些常用的包下手找手感,LZ个人觉得再合适不过。

 

  第二级别:深刻理解

  该级别包含的包如下:

java.lang.reflect
java.net
javax.net.*
java.nio.*
java.util.concurrent.*
View Code

  深刻理解,这个看似比精读源码要求低的级别,其实恰恰是最重要的。这个级别要求的类,全都是一些进阶到高级所必须了解的。

  当然了,这里要强调一点的是,LZ说这些类要深刻理解,而没说要看它们源码,并不是说这些类的源码不能看,或者看了没用。而是这些类的源码往往非常复杂,要了解清楚细节花费的时间是非常多的,因此,花费巨量的时间去研究这么复杂的代码其实没必要的。

  不过,如果你在使用这些类的过程中,遇到了问题,这个时候如果看它们源码可以解决的话,那就不要再矜持了,果断看看源码解决你的问题吧,这是最适合的看源码的契机了。

  小小的透露一下,LZ看过的JDK源码,基本上全是这么看过来的。遇到了问题不要百度和谷歌,看源码能解决你90%的问题。

  此外,看到这四个包的名字,不难看出它们各自代表了什么。reflect代表了反射,net代表了网络IO,nio代表了非阻塞io,concurrent代表了并发。

  这四个家伙可以说每一个都够面试官问上半天的,而且,这四个包的内容,如果你要深刻理解的话,其实还牵扯了很多其它的知识。

  举个例子,反射你要了解清楚的话,你是不是要搞明白JVM的类加载机制?网络IO要搞清楚的话,你是不是要清楚TCP/IP和HTTP、HTTPS?包括并发包,如果你要搞清楚的话,是不是要了解并发的相关知识?

  因此,这四个包要彻底搞清楚,还是需要花费一定时间和精力的。

  但是,请相信LZ,这绝对是值得的,甚至可以说,这四个包用的够不够叼,基本决定了一个Java程序员所处的档次。

  

  第三级别:会用即可

  该级别包含的包如下:

java.lang.annotation
javax.annotation.*
java.lang.ref
java.math
java.rmi.*
javax.rmi.*
java.security.*
javax.security.*
java.sql
javax.sql.*
javax.transaction.*
java.text
javax.xml.*
org.w3c.dom.*
org.xml.sax.*
javax.crypto.*
javax.imageio.*
javax.jws.*
java.util.jar
java.util.logging
java.util.prefs
java.util.regex
java.util.zip
View Code

  会用即可,这个级别的要求很显然了,就是会用就可以了。这些包大部分都是在特定的情况下会用到,但却不会时刻用到。

  就像sql包和transaction包,就是操作数据库时用到的。而xml、dom和sax这些,都是操作xml时用到的。其它的包也都是类似的,有使用注解时用的,有远程方法调用时用的,也有涉及到加密时用到的等等。

  这些包在面试时一般不会问到,所以它们的重要性自然要低很多,而且也不太需要刻意的去学,用到了研究一下,会用即可。

  

  第四级别:请无视它

  该级别包含了所有以上没有提到的包。

  这个级别就更不用解释了,到现在还没提到的包,基本上可以忽略,因为你基本上不太可能用到它们,比如swing、awt这些玩意儿。

  什么?你说你经常用它们?

  如果真的是这样的话,那么LZ只能遗憾的告诉你,赶紧跳槽吧,你待在这公司没啥前途的,0-0。

  

  第三部分:Java的开发工具

  这些开发工具主要就是辅助你开发的了,javac应该是最常用的一个了,虽然你几乎不用手动执行它。

  此外,其实还有一些比较实用的工具,可以帮助你排查问题。而且有的面试官,也会问你这类问题,比如问你平时都用什么工具排查问题。

  LZ觉得比较实用的几个工具主要有jmap、jconsole、jstack、jvisualvm,至于这几个工具有什么作用,LZ这里就不提了,如果你要了解这些命令的详细内容,可以去谷歌或者官网上找,还是非常好找的。

  当然,如果你有兴趣的话,也可以自己去JDK的bin目录下找找,看有没有什么更好玩的工具。

  

小结

  

  好了,到这里基本上就把“玩好JDK”这件事说完了。

  总的来说,第一级别和第二级别是最重要的。

  更简单的说,可以把第一级别的那些包称作基础,第二级别的那些包称为进阶。至于第三级别和第四级别的那些包,就没什么可说的了。

  当然了,最重要的还是那万年不变的JVM,请记住了,JVM才是你Java根基的根本,就是再牛逼的类,没了JVM它也就是一个无用的class文件而已。

  如果你想拥有扎实的Java基础,那就抓紧玩好JDK吧。玩好JDK以后,不要忘了学个一技之长

 

附:JAVA知识体系图

大厂面试突击——java基础篇 全文共11620字,我不相信你能一次看完 阅读详情

相关推荐

PlayReady Encrypt XAP 解密讨论

目前WP7市场上的绝大部分XAP都被MS进行了加密,经过分析,这个加密方式采用了AES方式进行了加密,本人经过对新的XAP格式(PRE)进行了分析,发现新的格式里,实际上是对之前PK(ZIP格式)的XAP进行了加密然后封装:   typedef struct {   DWORD HDR; // 0x07455250 : PRE & 0x7   DWORD a1; // always 0x1   D

u013729125的专栏 1508

jdk与jre的区别

首先笔者想阐明的是:JDK和JRE没想象中的那么简单。 相信大家都知道JDK和JRE是什么,但是具体干什么用不妨先试问下自己,如果能说出个所以然来,那么这篇文章大神请自觉忽略,呵呵,或者可以温故一下。 如果有哪里说的不对的地方还望指出,谢谢。 下面来简单说明下 先上张图,宏观的看一下 从图中可以看出JDK包含JRE包含JVM... JDK:java developmen...

你只管努力, 8万+

Python表白代码:“ 星光月夜烟花皆归你,我也归你”(满天烟花盛开、附番外玫瑰)

导语 "慢品人间烟火色 闲观人间岁月长" ———致自己​​​ ​ ???? 遇见我以后,我们的故事就开始了,愿你历经山河,仍觉得人间值得????。 ​ 星光月夜烟花皆归你,我也归你。关于烟花????大家都​知道多少?有多少表白故事情节都发生在烟 花下,想必木木子????不用说大家也知道叭~​​ 今天这则小短文就是关于烟花的故事!你准备好跟我一起进入烟花的世界了嘛? ​正文 “每一句文案,都有一个故事,你仔细听” ​ 1)环境安装???? 准备好:.

顾木子吖的博客 5万+

仅靠一文便火爆全网,开源京东绝密800页JDK源码笔记:霸榜GitHub

JDK是什么? JDK 是Java开发工具包 (Java Development Kit ) 的缩写。它是一种用于构建在 Java 平台上发布的应用程序、applet 和组件的开发环境。其中包括了JVM、Java编译器、大量的Java工具以及Java基础API里面是Java类库和Java的语言规范,同时Java语言的任何改进都应当加到其中,作为后续版本发布。要成为一名程序员,JDK是一种最基本的工具。 JDK包括三部分: (1)jre(即java开发环境); (2)java工具(包括编译器javac.

m0_64435718的博客 555

Basler相机和pylon viewer 的使用

文章目录1 线路连接2 安装和使用pylon 1 线路连接 电源线接到电源插座,网线接到电脑(电脑没有网口的话,可用转换器转到type-c接口)。 2 安装和使用pylon 参考 Basler pylon安装及对网口相机基本设置 相机和电脑以太网IP设置参考:balser相机IP设置 关于相机参数和pylon viewer的详细设置,可以参考pylon Viewer安装路径下的文档(Documentation) ...

Deephome的博客 1万+

车载以太网:PHY(物理层)介绍

本文以TJA1101芯片为实例介绍了车载以太网PHY(物理层)组成。

kevin1499的博客 6231

JDK的组成

JRE:JRE(Java Runtime Enviroment),意思是Java的运行环境;核心类库:它是Java本身写好的一些程序,给程序员调用的。Java程序员并不是凭空开始写代码,是要基于核心类库提供的一些基础代码,进行编程。JVM:JDK最核心的组成部分是JVM(Java Virtual Machine),它是Java虚拟机,真正运行Java程序的地方。JDK:java开发工具包,提供给程序员使用,内部包含:编译器,运行器,JRE。如果配置java运行库需要设置的是JDK的安装目录。

sunyu7的博客 1100

ruoyi-vue-pro集成magic-api(图文代码)

原先写过简单的集成:了解 magic-api的基本用法 附实战代码 magic-api相关文档推荐阅读:接口鉴权 相关的Java代码推荐阅读: java框架 零基础从入门到精通的学习路线 附开源项目面经等(超全) 【Java项目】实战CRUD的功能整理(持续更新)

码农研究僧的博客 7万+

jdk的基本构成

一、JDK是什么 JDK :Java Development ToolKit(Java开发工具包)。JDK是整个JAVA的核心,包括了Java运行环境JRE(Java Runtime Envirnment),Java工具(javac/java/jdb等)和Java基础的类库(即Java API 包括rt.jar)。 JRE:Java Runtime Environment,它为Java提供了运行环境,其中重要的一环就是通过JVM将字节码解释成可执行的机器码。JRE由JVM,Java运行时类库,动态链接库等组

liwangcuihua的博客 5013

Nmap源码分析(端口扫描)

端口扫描是Nmap的核心功能,用于确定目标机的端口状态(开放、关闭、过滤等),也为Nmap的服务与版本扫描、OS扫描、脚本扫描提供基本的指引信息。所以,深入理解端口扫描的实现对分析其他的扫描方式很有帮助。 1简单回顾   首先简要回顾一下端口扫描的原理以及命令行选项。 1.1扫描原理   Nmap提供的10多种类型的端口扫描方法,如TCP SYN/ACK/FIN/Xmas/NULL/ Windows/Connect,FTP Bounce, Idle scan, UDP port u...

墨痕诉清风的博客 1597

【Unity的HDRP渲染管线下实现好用的GUI模糊和外描边流光效果_Blur_OutLine_案例分享(内附源码)】

因为没有用到纹理,但介于是UI层,没有MainTeX的时候,会提示报错,所以这里加上了MainTex,最后不在片段着色渲染出来既可。这样UI层级显示正常了,但旋转后的模糊效果,跟背景拼接不上,有很大的偏移。猜测是屏幕UV采样错误导致,只要找到屏幕UV数值,更正过来就可以了,RenderTexture设置一下Size既可,其他的先不管。没有贴图,用Shader实现外描边流光效果。将主相机拖入Render Camera。新建一个RenderTexture。

暴走约伯的博客 1149

什么是 JDK?

JDK 是 Java Development ToolKit 的简称,也就是 Java 开发工具包。JDK 是整个 Java 的核心,包括 Java 运行环境(Java Runtime Envirnment,简称 JRE),Java 工具(比如 javac、java、javap 等等),以及 Java 基础类库(比如 rt.jar)。 最主流的 JDK 是 Oracle 公司发布的 JDK,除了 ...

沉默王二 4万+

042、双管反激的电压应力优势

【摘要】本文通过300W工业电源炸管案例,对比分析了单管与双管反激拓扑的电压应力差异。单管反激因漏感能量难以处理,尖峰电压可达1180V,需依赖RCD吸收电路但效率低下;双管反激通过钳位二极管将漏极电压限制在输入电压水平(实测650V),能量回馈使效率提升2-3%。虽增加两个MOS管,但可选用600V器件(单管需1200V),总成本反降15%以上。作者建议150W以上或高压输入场景优先采用双管反激,其确定的电压应力可显著提升可靠性,避免单管反激的参数玄学问题。关键设计要点包括快恢复二极管选型、紧凑布局及漏感

Jack010169的博客 83

java面试之基础(面试必看)

java基础面试题1.jre,jdk,jvm之间的区别是什么?2.Java中一个char类型是否可以存储一个汉字?3.Java的数据类型?4.自动类型转换规则是什么?5.运算符优先级顺序是什么?6.if和switch选择结构的区别是什么?7.While循环和do while循环的区别是什么?8.break和continue的区别?9.数组使用的步骤?10.类和对象的关系?11.类的开发步骤是什么?...

qq_45295634的博客 6198

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Java面试题总结(附答案)

Java经典面试题系列。

学Java,找哪吒 9万+

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

3万字80道Java基础经典面试题总结(2024修订版)

本系列是《10万字208道Java经典面试题总结(附答案)》的2024修订版,打造Java面试题一站式解决方案。

学Java,找哪吒 4万+

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

2023年Java最新面试题,附详解答案

序列化就是一种用来处理对象流的机制,就是将对象的内容进行流化,可以对流化后的对象进行读写操作,也可以将流化后的对象传输于网络之间。可通过实现接口来实现序列化。AOP是面向切面编程,用于在不改变原有逻辑的基础上增加一些额外的功能,如事务管理、日志、缓存、权限控制等。Spring AOP是基于代理的。如果目标对象实现了接口,则默认采用JDK动态代理。如果目标对象没有实现接口,则采用CgLib进行动态代理。如果目标对象实现了接口,且强制CgLib代理,则采用CgLib动态代理。IOC翻译为。

程序员徐师兄的博客 7303

Java面试中Java基础面试题

java基础面试题 java一些基础面试题,对刚刚步入社会的2019届毕业生有帮助,自己总结的,很基础。

唐_方的博客 9605

Android 知识体系脑图「java篇」

1. 前言 最近准备跳槽一波,试了一下水,现在要求越来越高,基础不行根本活不过两集,连boss的面都见不到。 边面试边总结,回来恶补基础,花了些时间整理了下知识体系。自己看书也怕理解有误,希望大佬留言交流指正与补充。 这篇文章主要还是脑图的形式,不会展开细节,当做是划重点把。 像 HashMap, ArrayList, 线程池, 都有问到把。搞个脑图方便快速查漏补缺(不禁回忆起高三的美...

栀夏暖阳的博客 441

Java基础面试总结(八股)

来看:如果成员变量是使⽤ static 修饰的,那么这个成员变量是属于类的,如果没有使⽤ static 修饰,这个成员变量是属于实例的。对象存于堆内存,如果局部变量类型为基本数据类型,那么存储在栈内存,如果为引⽤数据类型,那存放的是指向堆内存对象的引⽤或者是指向常量池中的地址。看:成员变量是属于类的,⽽局部变量是在⽅法中定义的变量或是⽅法的参数;上看:成员变量是对象的⼀部分,它随着对象的创建⽽存在,⽽局部变量随着⽅法的调⽤⽽⾃动消失。Java 不支持多继承,一个类只能继承一个类,多继承会引发菱形继承问题。

m0_64616651的博客 1571

java知识体系精讲系列一(基础) -- 面试指南

系统总结java基础知识,包括 多态、封装、泛型、反射及常见集合类型等java基础知识

yun_zhonghe02的专栏 823

java面试合集

随着软件行业竞争日益激烈.Java作为最广泛的编程语言之一,其开发者在求职的过程中面临的......

云端源想的博客 2016

Java基础面试题大全

面试的过程中基础是很重要的一环,在此总结了一下我在面试过程中遇到的基础性问题,希望能在你们面试的过中锦上添花。 1.jdk jre jvm三者之间的关系 java开发者工具包 java运行环境 java虚拟机 jdk>>jre>>jvm JDK是Java开发工具包,是Sun Microsystems针对Java开发员的产品。 JDK中包含JRE,在JDK的安装目录下有一个名为jre的目录,里面有两个文件夹bin和lib,在这里可以认为bin里 的就是jvm,lib中则是jvm

冰蛙 4159

2024年最新JDK1,那些BAT大厂的Java面试官到底在想些什么

光给面试题不给答案不是我的风格。这里面的面试题也只是凤毛麟角,还有答案的话会极大的增加文章的篇幅,减少文章的可读性。

2401_84689725的博客 404

Java基础篇面试题 2024

Java基础篇面试题 2024 每日持续更新中,文中包含Java全技术栈面试题合集地址并可直接跳转

qq_58353992的博客 1872
上一篇: 人工智能时代的危机
下一篇: 【设计模式】—-(19)解释器模式(行为型)
白衣染霜陈
博客等级 码龄22年 682粉丝 338原创
评论 6
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值