如何自学Java语言?

createh53个月前 (01-06)技术教程40

随着互联网的高速发展,越来越多的人开始学习Java,对于喜欢编程的朋友来说,Java是一门非常值得去学习的语言,那么Java语言应该怎么学呢?

Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。

想要学习Java,我们得先要明白Java各个版本的含义:

JavaSE(Java Standard Edition):标准版,定位于个人计算机上的应用。这个版本是Java平台的核心,它提供了非常丰富的API来开发一般个人计算机上的应用程序,包括用户界面接口AWT及Swing,网络功能与国际化、图像处理能力以及输入输出支持等。在上世纪90年代末互联网上大放异彩的Applet也属于这个版本;

JavaEE(Java Enterprise Edition):企业版,定位在服务器端的应用。JavaEE是JavaSE的扩展,增加了用于服务器开发的类库。如:JDBC是让程序员能直接在Java内使用的SQL的语法来访问数据库内的数据;Servlet能够延伸服务器的功能,通过请求—响应的模式来处理客户端的请求;JSP是一种可以将Java程序代码内嵌在网页内的技术;

JavaME(Java Micro Edition):微型版,定位在消费性电子产品的应用上,JavaME是JavaSE的内伸,包含J2SE的一部分核心类,也有自己的扩展类,该版本针对资源有限的电子消费产品的需求精简核心类库,并提供了模块化的架构让不同类型产品能够随时增加支持的能力。

下面我将给大家分别介绍一下标准版和企业版要如何学习:

JavaSE部分

新手最初学习的时候先要从JavaSE开始学起,所包含的内容主要分为:面向对象概念的理解、Java基本语法的学习,Java桌面图形界面应用程序的开发,掌握常用的Java API等(关键是要学会怎样查阅)。

重点:Java基本语法(循环结构,数据类型,数组,运算符等)、Swing,awt,事件机制、文件输入输出流处理等;

难点:面向对象思想的理解(接口、类等)、线程、socket网络编程等。

JavaEE部分

在学习了JavaSE之后,你可以尝试着慢慢过渡到JavaEE。当然,学习JavaEE也需要很多其他技术的支撑,比如数据库技术,网页编程技术等等。JavaEE有三个必学的框架,如果你说你学了JavaEE,但又不会这三个框架的话,是不应该的,这三个框架分别是Struts、Spring和Hibernate,虽然这三个框架应用很广,但不代表这三个框架就代表了JavaEE,JavaEE还有很多其他的东西,比如EJB,作为一款重量级框架,虽然这个应用慢慢的再被其他框架所取代,但EJB3.0的出现也给它带回一些生机。尚学堂陈老师提到,当前JavaEE流行的框架是SSM框架,即Spring、SpringMVC、MyBatis三个开源框架,他是对之前SSH框架的改进。

不过前面介绍到得这些都不是JavaEE的基础,是属于框架应用级别的.要真正把上面说到的知识掌握好,还是的学习JavaEE最核心的东西:JDBC、JSP、servlet和JavaBean,后面三个也是学习SSH的基础(Struts\Spring\Hibernate的简称)。

鉴于JavaEE的内容太过复杂,建议大家最初只学习: JSP,servlet和JavaBean,等这个基础掌握好再把SSH学习了,再对其他JavaEE技术有个大致的了解就可以出去找工作了。当然,找工作的前提除了把Java学习好,还会有一些其他的技术也是必须要掌握的。

还有比较重要的内容是数据库技术:

数据库几乎是程序中不可或缺的一部分,在整个软件开发中更是占据了重要作用。数据库在整个软件中扮演的是地基的角色,你要修房子,就要先打好地基,你要做软件,就要先设计好的数据库。目前数据库几乎都是关系型数据库,代表的有: SQL Server/MySQL等。

综上所述,Java的学习也并不难,只要你能坚持动手学习,把基本的Java语法融会贯通,能够在实际项目中熟练应用框架,并能够对数据库进行增删改查等操作,随着开发经验的增长,技术也会不断地提升。

相关文章

Java图像基础知识

前言提起java的图像处理,可能很多人都觉的java不太适合这方面的业务,毕竟很多图形学和图像处理都是基于C或者C++来实现的,比如OpenCV的2D图像处理、Matlab的图像处理、OpenGL的2...

一些JDK自带的性能分析利器

有时候碰到服务器CPU飙升或者程序卡死之类的问题,一般都不太好定位。这类bug一般都隐藏的比较深并且还可能是偶发性的,比较棘手。对于此类问题,一般我们都有固定的分析流程。借助于JDK自带的一些分析工具...

基于Java的壁纸网站+vue

ssm665基于Java的壁纸网站设计与实现+vue绪论课题背景身处网络时代,随着网络系统体系发展的不断成熟和完善,人们的生活也随之发生了很大的变化。目前,人们在追求较高物质生活的同时,也在想着如何使...

Java程序员必须掌握的15个设计模式,特点和使用场景汇总整理!

设计模式是一种广泛使用的编程思想,它是一种用于解决特定问题的经验性方法,提供了一套通用的解决方案,可用于不同的应用场景,可以帮助我们解决常见的问题并提高代码的可重用性和可维护性。设计模式分为三类:创建...

Java深入浅出:一文搞懂 Java 中的内核态、用户态和上下文切换

在学习 Java 开发中,可能你经常听到一些“系统级”术语,比如 内核态、用户态 和 上下文切换。这些概念看起来有点“硬核”,但其实它们和程序的执行效率密切相关,理解了它们有助于优化系统性能。今天咱们...

Portainer-ce图形化界面

注意:Portainer官方是没有中文界面的官方地址:https://www.portainer.io/ 项目地址:https://github.com/portainer/portainer# 拉取...