Java学习攻略 MLDN讲师 李兴华

JAVA学习攻略-初学者必看



                                       Java学习攻略        MLDN讲师 李兴华

 本攻略视频版本详见  http://www.mldnjava.cn/article/84.html
一、学习目标
学习Java不仅学习的是一门语言,更多的是学习了一种思想,一种开发模式,而且从事软件行业的工作人员,掌握了Java语言,可以让自己日后的事业发展更加顺利。
在众多企业开发平台横行的今天,Java语言以其简洁的语法、众多的厂商支持,成为了众企业平台开发的首选语言,掌握了Java也就相当于掌握了众多厂商提供的产品,从而为自己的事业发展会有更多的选择。
不仅如此,Java语言由于学习完整,所以相比较起来,对于Java开发人员可以轻松转入到手机开发、.NET、PHP等语言的开发上,以后也可以更快的跨入到项目经理的行列之中。
二、企业平台
下图列出了企业开发平台的组成部分及与Java技术的对应关系。
java学习图
在企业进行企业开发中读者可以发现,所有的开发完全是通过中间件来完成程序和数据库间的操作,所以在整个企业开发环境中,数据库是一个重要的操作,而如果要想让操作更加合理,就要有很强的程序逻辑和良好的系统设计。
 
三、Java与Java EE间的关系
Java是一种企业平台的开发技术,里面有众多的技术,使用Java开发的企业技术称为Java EE,所以在这之前每个读者必须首先搞清楚Java SE和Java EE的关系,如图所示。
javaee学习
从上图中可以清楚的发现,如果要想进行Java EE的开发,Java SE是其中必要的组成部分,这也就是为什么在学习Java EE之前要读者一定要有扎实的Java SE基础了。
四、Java SE的核心技术
在Java SE核心的部分主要有四个,这四个是直接与日后的Java EE开发有关的。
1. 面向对象
主要是要求读者建立好一个面向对象的概念,并可以灵活的运用这些概念进行程序的分析,可以说在整个Java SE部分核心就是面向对象的开发,里面涉及的概念较多,但是所有的概念最终都是为接口和抽象类服务的,而所有Java开发中涉及到的各个设计模式,实际上也是针对于接口和抽象类的应用。
2. 类集框架
大部分的读者都应该听过或学习过数据结构,虽然从大学就开始学习《数据结构与算法》,但是实际上来讲,学习完后真正可以进行数据结构编写的人并不多,而且大部分的数据结构都是以C语言为基础讲解的,而类集就相当于是Java实现的数据结构,包括树、链表、队列等等,如果只是进行应用层次开发的读者没有必要深入了解其内部的操作,但是必须清楚的掌握其核心的接口和各个操作类。
3. IO操作
对于大部分的自学者而言,IO操作也许是最难过的一个坎了,如果没有很好的理解抽象类和接口的概念,那么要想充分的理解IO操作是很难的,在整个IO操作之中,完整的体现了Java语言多态性的设计思想,而且在学习IO的时候必须始终把握住一个原则:“根据使用的子类不同,输入输出的位置也不同”。
4. Java数据库操作(JDBC)
JDBC首先并不能算是一门技术,更多的应该算是一种服务 —— Java提供的数据库访问服务,里面提供了大量的操作接口,各个数据库生产商根据这些接口实现自己的数据库操作,从面向对象的设计上来看,用户完全没有必要考虑其接口是如何实现的,而更多的是关心如何使用这些接口。而且从现在的项目开发中,读者可以清楚的发现,大部分的开发都是基于数据库的开发。
虽然核心是以上四个,但是对于程序开发,每位读者应该建立起一些基本的程序思路,对于初学者来讲,应该将本书第一部分的知识打牢,基本的循环操作要明白,例如:打印正三角形、九九乘法表、冒泡算法等都是一些基本的要求。而且在学习程序的开发上没有任何的捷径,每一位普通人肯定都需要进行反复的代码熟练才能将代码运用明白,就好象练习武工一样,只有坚持练习,才能让自己的动作收发自如,灵活运用。我在讲课的时候跟学生讲过,我的脑子里不会记住任何的代码,包括讲课中我也没有任何的代码记住,只是我敲熟了,用的时候代码就自然尔然的写出来了,所以只有勤学苦练才能牢固的掌握编程语言,世界上或许有程序天才,但是我自己承认我和大部分人一样,都是普通人,都是每一步一个脚印走出来的。
五、企业平台开发架构
在Java企业平台开发中,有两套开发架构:标准开发架构、开源架构。
标准开发架构就是使用了SUN提供的标准Java EE开发技术,使用JSP/Servlet、EJB进行开发,如图所示。
标准架够可以单独使用JSP/Servlet技术开发,也可以通过EJB完成分布式开发,但是此套开发架构的成本较高,所以在现在开发中开源架构也较为常用,如图所示。
开源架构就是常提到的Struts、Hibernate、Sprint、AJAX框架等技术,这些都只是标准技术的衍生产品。
六、学习步骤
在我们MLDN软件实训中心,有不少咨询的学员都在问:“我只学过C语言,我能学会Java吗?”在这里我跟这些学员说一下我的亲身经历,我本身最早的时候只会C语言,C语言只会到数组,甚至连函数都不会写,指针都不明白,但是就靠着自己的毅力把整个Java完全自学过来了,那么既然大家都是普通人,我可以学会,你们为什么不能学会呢?遇到困难不要放弃,更不要对自己怀疑,只有抱着坚强的信念才可以把任何困难战胜。
学了这么多年程序,也搞了这么多年,从最早只会C、Java到后来可以熟练掌握各个主流语言的开发,中间经历了很多的辛酸,这一每一步的成长自己都能看得到、感受的到,但是也终于发现,实际上所有的程序语言都是相通的,核心的内容就是关键字、基本控制、数组、方法(函数),根据不同的平台找不同的方法,所以不要被各个语言所迷惑,也不要觉得难,因为当你自己完全学会了一门语言之后,其他的就都学会了。
通过本书学习Java的过程中,可以参照以下建议。
1. 重点掌握:充分的理解每一个知识点,代码编写熟练
⑴ Java的主要作用、特点、开发环境、classpath。
⑵ public class和class的区别,程序的基本结构、关键字。
⑶ 各种循环控制、运算符。
⑷ 数组的定义、动态初始化、静态初始化、内存分配、方法定义格式、方法重载、两个新特性:foreach、可变参数。
⑸ 类与对象、类的定义结构、构造方法、private、static、this、引用传递、内部类,在本章一定要掌握简单类的开发方法。
⑹ 类的扩展、super、final、抽象类、接口、多态、实际分析。
⑺ 异常的产生原因、标准异常的处理语句格式、throw、throws、assert
⑻ 包的作用、package、import、系统常见包、四种权限的关系
⑼ Java常用类库。在学习的时候不要花太多的经历去记住类的使用方法,关键是要学会如何查询文档,Java提供的系统类太多了,每个人是不可能全部记下来的,用到何种功能大概可以想起来,之后通过文档查询其具体用法就行了,没有一个人可以将所有的类库都背下来,只需要将常用的灵活掌握即可。例如:StringBuffer、垃圾收集、Date、SimpleDateFormat、正则、比较器等
⑽ Java IO,面向对象的核心体现,File、OutputStream、InputStream、Wirter、Reader、Serializable等
⑾ Java类集的作用及使用,Collection、List、Set、Map、Iterator等核心接口的使用
⑿ MySQL、SQL命令、Statement、PreparedStatement、ResultSet、事务处理,因为本书不是一本专门讲解数据库的书籍,所以在讲解的时候只是介绍性的讲解了部分的SQL语句。
2. 理解掌握内容:掌握其运行的基本效果,具体的代码可以不用全部灵活掌握
⑴ 多线程:运行形式、两种实现方式及区别、同步及死锁
⑵ 泛型:泛型更多的是应用在类集的概念上,所以本章只需要掌握泛型的使用形式即可
⑷ 枚举:enum关键字,如果没有习惯于使用枚举开发的人员,则本章只需要了解即可。
⑷ Java反射机制:重点部分就是在于如何取得Class对象,并且进行对象的实例化操作。
⑸ Annotation:在EJB 3.0中使用较多,纯粹的Java开发主要就是三个内建的Anotation。
⑹ Eclipse开发工具:开发工具本身不能算是重点,在本书讲解中基本上都很少使用到开发工具,读者一定要记住:只要程序会编写了,则开发工具也就自然会使了。
Java SE学习完之后,我建议读者最好先学一下数据库的相关知识,从整个中国的软件开发来看,Oracle、MySQL、SQL Server三个数据库使用较多,但是个人认为,学习Oracle会比较好一些,而且读者必须记住一点,在Java的开发中如果使用了SQL Server则性能是最差的,故:在此我推荐的就是Oracle数据库,可是,读者也必须清楚一点,我们是程序开发人员,而数据库管理是另一门学科,在学习数据库的时候应该将更多的重点放在SQL语句的编写上,如果希望获得一些免费资料的读者,可以直接通过此页面进行下载:http://bbs.mldn.cn/forum-45-1.html
最后希望每一位读者都可以学有所成,因为从我个人的学习来看,只要学会了Java,则.NET或PHP都可以很容易的学会,如果你自己本身还喜欢游戏的话,也可以学学手机的Java ME开发,实际上也都是很容易的,从一点一滴积累,现在就开始努力吧,我们MLDN会给大家的学习提供最好的资料,最好的帮助。
发布了26 篇原创文章 · 获赞 10 · 访问量 24万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览