精通java是什么概念(怎么样才算精通Java)

本文目录
怎么样才算精通Java
JAVA精通的人一般是指对JAVA内核代码(总共2MB多)几乎全部熟悉,你熟悉servlet的init()方法么?那是静态方法还是其他?他在运行时,是构造方法先运行还是init先运行?数组获取长度的方法是length还是length()? 越基础的东西,往往是精通的人最应该明白的东西。弄上几年的java以后碰到的内核代码也就越来越多。你写的那些,让我感觉你也不是很专业,至少hibernate的特性表达的不是很清楚,多看看源代码。
战略上藐视,战术上重视,也说说什么是精通java
我理解的精通
1 能在实践中深刻体会过这门语言的优势和弊端,知道它的能力边界
2 每一次更新,你会主动关心新特性,思考会对以后项目实践有何影响
3 你运用这门语言解决问题的能力,超过大多数人
4 当你真正觉得语言就是个工具的时候,看到问题想到的是架构,模型,算法等,能通过业务需求选择需要,选择用java还是其他的语言时,就算你最终选择弃用JAVA,我想你也是精通它了
如果还是不理解,大家都喜欢玩lol/dota,把”这门语言”换成“英雄”,把架构模型算法,换成“阵型,角色定位,战术”,重读一下上面的话吧
老司机带你分析SpringMVC框架设计原理与实现
***隐藏网址***
***隐藏网址***
密码:57w4Netty粘包分包现象及解决方案实战,防socket攻击
***隐藏网址***
***隐藏网址***
密码:dk9n大型企业级高并发下数据库水平切分之读写分离技巧详解
***隐藏网址***
***隐藏网址***
密码:ri8q分布式事务出现场景及解决方案详细剖析
***隐藏网址***
***隐藏网址***
密码:380p以上都是小编收集了大神的灵药,喜欢的拿走吧!喜欢小编就轻轻关注一下哦!
真正的精通Java是种什么样的境界
java方向很多,关注点不一样。比如j2ee,java服务器,大数据等等。
如果针对java语言本身而言如何精通呢?我从技术角度来说说。
1. 知道常用的api,并能熟练的掌握,这个是第一步。
2. 能够模拟常见的数据结构,比如LinkedList,ArrayList, TreeMap,Stack,BlockingQueue,这递增不仅可以理解数据结构还可以帮助学习jdk是如何实现的。参阅双向链表模拟
3.掌握java经典的IO结构,包括BIO,NIO,AIO要深入的晓得JDK大体代码结构。JavaNIO,AIO编程
4.理解多线程,以及如何控制线程安全,包括同步器和信号量。java同步器解析
5.理解JVM的内存布局,以及垃圾回收算法,能很好的使用jdk自带的调优工具。理解volatile内存语义
下一步就是研究OpenJDK,这需要一些c的知识,但这个时候恰恰可以很好的理解AQS等核心内容,到这个时候,语言已经不是问题。
作者:watchmen
***隐藏网址***
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
精通java吗
Java语言是一个支持网络计算的面向对象程序设计语言。Java语言吸收了Smalltalk语言和C++语言的优点,并增加了其它特性,如支持并发程序设计、网络通信、和多媒体数据控制等。主要特性如下:
1) Java语言是简单的。Java语言的语法与C语言和C++语言很接近,使得大多数程序员很容易学习和使用Java。另一方面,Java丢弃了C++ 中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。特别地,Java语言不使用指针,并提供了自动的废料收集,使得程序员不必为内存管理而担忧。
2) Java语言是一个面向对象的。Java语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为implements)。Java语言全面支持动态绑定,而C++ 语言只对虚函数使用动态绑定。总之,Java语言是一个纯的面向对象程序设计语言。
3) Java语言是分布式的。Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java.net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、 ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
4) Java语言是健壮的。Java的强类型机制、异常处理、废料的自动收集等是Java程序健壮性的重要保证。对指针的丢弃是Java的明智选择。Java的安全检查机制使得Java更具健壮性。
5) Java语言是安全的。Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击。除了Java语言具有的许多安全特性以外,Java对通过网络下载的类具有一个安全防范机制(类ClassLoader),如分配不同的名字空间以防替代本地的同名类、字节代码检查,并提供安全管理机制(类SecurityManager)让Java应用设置安全哨兵。
6) Java语言是体系结构中立的。Java程序(后缀为java的文件)在Java平台上被编译为体系结构中立的字节码格式(后缀为class的文件), 然后可以在实现这个Java平台的任何系统中运行。这种途径适合于异构的网络环境和软件的分发。
7) Java语言是可移植的。这种可移植性来源于体系结构中立性,另外,Java还严格规定了各个基本数据类型的长度。Java系统本身也具有很强的可移植性,Java编译器是用Java实现的,Java的运行环境是用ANSI C实现的。
8) Java语言是解释型的。如前所述,Java程序在Java平台上被编译为字节码格式, 然后可以在实现这个Java平台的任何系统中运行。在运行时,Java平台中的Java解释器对这些字节码进行解释执行,执行过程中需要的类在联接阶段被载入到运行环境中。
9) Java是高性能的。与那些解释型的高级脚本语言相比,Java的确是高性能的。事实上,Java的运行速度随着JIT(Just-In-Time)编译器技术的发展越来越接近于C++。
10) Java语言是多线程的。在Java语言中,线程是一种特殊的对象,它必须由Thread类或其子(孙)类来创建。通常有两种方法来创建线程:其一,使用型构为Thread(Runnable) 的构造子将一个实现了Runnable接口的对象包装成一个线程,其二,从Thread类派生出子类并重写run方法,使用该子类创建的对象即为线程。值得注意的是Thread类已经实现了Runnable接口,因此,任何一个线程均有它的run方法,而run方法中包含了线程所要运行的代码。线程的活动由一组方法来控制。 Java语言支持多个线程的同时执行,并提供多线程之间的同步机制(关键字为synchronized)。
11) Java语言是动态的。Java语言的设计目标之一是适应于动态变化的环境。Java程序需要的类能动态地被载入到运行环境,也可以通过网络来载入所需要的类。这也有利于软件的升级。另外,Java中的类有一个运行时刻的表示,能进行运行时刻的类型检查。
怎样的水平才叫精通java
Java达到精通的话,要能独立开发一套开源的框架了,像springside,jfinal,一般来说做到精通各种流行框架,
提高JAVA技术首先要打好基础,基础很重要,这是编程的前提,另外要多看看书籍,推荐effective java,是脱离低级程序员时候的最佳读物,此外多看一些论坛,最重要的是多实践总结,多写代码,当写的代码达到3万行的时候,技术一定会有所突破。
代码能力是基本功,对内存使用对理解,对Java运维的理解等等,语言本身外,常用的框架是否可以十分清晰的了解,包括spring,包括他实现的ioc,aop,orm,web机制是否有清楚的认识,有丰富的经验等等。
程序java早就不是对数据库的增删改查了,分布式、微服务、性能优化都要会,还要了解其他基于jvm的语言,因为它们会给你的编程思想带来很大帮助。
普通工程师可能一直都在用别人架构好的东西,很难接触到核心开发,尝试自己独立从头开始完成一些项目,会发现编程其实远不仅仅只是CRUD,Getter/Setter多写代码,在写代码的过程中多看看用到的SDK/Framework的源码。

更多文章:
teammate(teammate,company,partner)
2026年10月11日 06:10
javascript arraybuffer(javascript可以把base64编码转换成二进制代码吗求示例代码!)
2026年10月11日 04:00
text函数公式(excel中round和text函数的区别是什么)
2026年10月11日 03:50
google chrome打不开(chrome浏览器打不开怎么回事 浏览器打不开的处理方法)
2026年10月11日 02:00
websocket整合springboot(Springboot整合Websocket遇到的坑)
2026年10月11日 01:40
drawerlayout(android 怎样让drawerlayout设置的侧滑菜单的内容充满屏幕)
2026年10月10日 19:20
xor四位数怎么运算(单片机怎样用C语言实现4个数字间的异或)
2026年10月10日 17:50
perl数组中最多的元素(用perl实现,得到一个数组中重复次数最多的元素)
2026年10月10日 17:00



