java学习作为一名java初学者,如何快速学习j
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java学习作为一名java初学者,如何快速学习j相关的知识,希望对你有一定的参考价值。
那首先来了解一下什么是java:
Java是SUN(Stanford University Network,斯坦福大学网络公司)1995年推出的一门高级编程语言,是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。
那么为什么要使用这个语言呢,Java语言的特点跨平台性,通过Java语言编写的应用程序在不同的系统平台上都可以运行。原理是只要在需要运行java应用程序的操作系统上,先安装一个Java虚拟机(JVM Java Virtual Machine)即可。由JVM来负责Java程序在该系统中的运行。
下面对java学习进行一次史无前例的剖析,细致的讲解零基础的人怎么学习Java。先看下Java在基础阶段的知识点路线图。
内容多吗?不要被吓到了,知识点剖析的比较细,所以看着比较多。不要害怕学不会,经过下面的详解,你就会明白这些知识点都是干嘛的了。
入门阶段,主要是培养Java语言的编程思想。了解Java语言的语法,书写规范等,掌握Eclipse、MyEclipse等开发工具,编写Java代码的能力。学完这个阶段你应该可进行小型应用程序开发并且可以对数据库进行基本的增删改查管理。注意:此阶段知识点的学习,会有真实的项目进行驱动学习,让你轻松理解各知识点。
1计算机基础知识
针对零基础学习的人,从对计算机操作等知识的了解,延伸到Java语言的发展与开发工具的使用上。主要是让你知道怎样执行计算机命令,认识Java这门语言,感受编程语言Java怎么开发程序。
1) 计算机基础
让零基础学习的人先了解计算机相关知识,进而再去了解Java语言。
2) DOS常用命令
了解什么是DOS,并掌握DOS控制台的打开方式,同时熟悉常用的DOS命令,例如:盘符切换、进入指定目录、删除文件等,完成使用DOS命令对计算机进行操作和控制。
3) Java概述
了解Java语言的发展史、Java语言平台版本、Java语言的特点,以及JRE与JDK。JRE是Java的运行环境,JDK是Java开发工具包,它包含了Java的开发工具以及JRE。所以安装了JDK就不用再单独安装JRE了。
4) JDK环境安装配置
了解了什么是JDK,以及JDK的重要性,下一步我们就来学习如何安装和配置JDK环境。在安装JDK之前,我们首先需要下载JDK,针对不同的系统,我们需要下载不用版本的JDK。
5) 环境变量配置
了解path、classpath环境变量,理解path变量和classpath变量的作用,并掌握path变量和classpath变量的配置方式。
6) Java程序入门
当JDK、环境变量配置完毕,我们就可以开始 编写Java程序。编写Java程序可以使用如下几种工具:notepad(微软操作系统自带)、Editplus、Notepad++、Eclipse、MyEclipse,sublime等等。
IntelliJ IDEA工具的使用(重点)
2编程基础
此模块学习是让你了解编程的具体流程,学习Java基础语法的格式等。具体要掌握不同数据类型的变量定义与使用,掌握不同运算符的运算规则,掌握流程控制语句的执行流程,编写方法的声明与调用,创建数组并访问数组元素等知识。
1) 注释
在程序开发工程中,用于解释和说明程序的文字我们称之为注释,Java中的注释分为以下几种:单行注释、多行注释、文档注释。
2) 关键字
了解Java关键字的含义及特点,掌握关键字使用的注意事项。
3) 标识符
了解什么是标识符,标识符的组成规则,以及标识符使用时的注意事项。
4) 常量与变量
理解常量与变量的含义,并掌握常量与变量的区别、变量的定义格式以及变量的赋值。
5) 数据类型
掌握Java语言的数据类型,如基本数据类型:byte、short、int、long、float、double、char、boolean,以及引用类型:类、接口、数组。
6) 运算符
熟练掌握Java中的运算符:算术运算符、赋值运算符、比较运算符、逻辑运算符、位运算符、三目运算符。
7) 流程控制语句
了解什么是流程控制语句,掌握以下流程控制语句:顺序结构、选择结构、循环结构,并能够通过流程控制语句实现特定的功能。
8) 方法
掌握方法的定义及格式,并能正确的调用方法,理解方法的调用过程,同时清楚方法的注意事项;掌握方法重载及其特点。
9) 数组
了解数组的概念,掌握数组的定义格式、静态初始化、动态初始化,并能够理解Java中数组的内存图解。熟练掌握数组的遍历、获取最值、数组元素逆序、数组元素查找、数组排序和二分查找,以及二维数组的定义格式及初始化。
3面向对象
现实世界中,随处可见的一种事物就是对象,对象是事物存在的实体,如人类、书桌、计算机、高楼大厦等。人类解决问题的方式总是将复杂的事物简单化,于是就会思考这些对象都是由哪些部分组成的。通常都会将对象划分为两个部分,即动态部分与静态部分。静态部分,顾名思义就是不能动的部分,这个部分被称为“属性”,任何对象都会具备其自身属性,如一个人,它包括高矮、胖瘦、性别、年龄等属性。然而具有这些属性的人会执行哪些动作也是一个值得探讨的部分,这个人可以哭泣、微笑、说话、行走,这些是这个人具备的行为(动态部分),人类通过探讨对象的属性和观察对象的行为了解对象。
1) 面向对象思想
了解面向过程编程思想,能够通过案例理解Java的面向对象编程思想,了解面向对象开发、设计、特征。
2) 类与对象
了解什么是类,什么是对象,并理解类与对象之间的关系;熟练掌握类的定义、对象内存图等。
3) 成员变量和局部变量
了解什么是成员变量,什么是局部变量,以及从他们在类中的位置、内存中的位置、生命周期、初始化值等方面掌握他们的区别。
4) 匿名对象
了解什么是匿名对象,掌握匿名对象的两种使用情况。
5) 封装
清楚的了解什么是封装,并能够理解封装的优点与缺点,同时掌握封装的原则。
6) this关键字
掌握this关键字的含义与使用。
7) 构造方法
了解什么是构造方法,构造方法的作用,以及与构造方法相关的注意事项。
8) 继承
理解什么是继承,继承的好处以及java中继承的特点和注意事项,继承中成员变量的关系、构造方法的关系、成员方法的关系,方法重写与方法重载的区别。
9) 多态
理解什么是多态,掌握多态案例及成员访问的特点,多态的优点和缺点,多态中的转型问题。
10) 抽象类
了解什么是抽象类,抽象类的特点,抽象类成员的特点。
11) 接口
了解什么是接口,接口的特点,接口成员的特点,类与类、类与接口的关系,以及抽象类与接口的区别。
12) 内部类
什么是内部类,内部类的访问特点,内部类的位置,什么是成员内部类、局部内部类、匿名内部类,以及匿名内部类在开发中的使用。
4、常用类
类库就是Java API(Application Programming Interface,应用程序接口),是系统提供的已实现的标准类的集合。在程序设计中,合理和充分利用类库提供的类和接口,不仅可以完成字符串处理、绘图、网络应用、数学计算等多方面的工作,而且可以大大提高编程效率,使程序简练、易懂。
学习内容:掌握Object类、Scanner类、String类、StringBuffer类、StringBuilder类、Arrays类、基本包装类、正则表达式、Math类、Random类、System类、Date类、DateFormate类、Calendar类,及其常用方法。
5、集合
集合类存放的都是对象的引用,而非对象本身,出于表达上的便利,我们称集合中的对象就是指集合中对象的引用。简单一点就是说,集合是存放数据的容器。
学习内容:什么是集合?数组与集合有什么区别,集合类的特点,掌握Collection接口、Iterator接口、List接口、ListIterator接口、ArrayList类、Vector类、LinkedList类、泛型、Set接口、HashSet类、Map接口、HashMap类、LinkedHashMap类等。
6、IO
IO(Input/Output)是计算机输出/输出的接口。Java的核心库http://java.io提供了全面的IO接口,包括:文件读写,标准设备输出等等。Java中IO是以流为基础进行输入输出的,所有数据被串行化写入输出流,或者从输入流读入。
1) 异常
了解什么是异常,异常的由来,常见的异常,异常的分类,掌握jvm对异常的默认处理方案,异常的处理方案:try…catch…finally、throws,什么是编译时异常,什么是运行时异常,掌握它们两的区别,throws关键字、throw关键字,以及这两个关键字的区别,熟练掌握自定义异常,异常注意事项。
2) File类
了解什么是File类,File类的用途,掌握File类的方法:createNewFile()、mkdir()、mkdirs()、delete()、renameTo(File dest)、isDirectory()、isFile()、exists()、等方法,以及File类的基本获取功能方法和高级获取功能方法。
3) IO流
了解什么是IO流,IO流的用途;熟练掌握输入流、输出流、字符流、字节流、IO流的常用基类;如何使用字节流读写数据、复制数据;什么是字节缓冲流,如何使用字节缓冲流读写数据;什么是转换流,如何使用转换流更加高效的读写数据,内存操作流、打印流、标准输入输出流、序列化流、Properties集合。
4) IO流练习
(1) 复制文本文件;
(2) 复制图片;
(3) 把ArrayList集合中的字符串数据存储到文本文件;
(4) 从文本文件中读取数据(每一行为一个字符串数据)到集合中,并遍历集合;
(5) 复制单极文件夹;
(6) 复制单极文件夹中指定文件并修改文件名称;
(7) 复制多极文件夹;
(8) 已知s.txt文件中有这样的一个字符串:“hcexfgijkamdnoqrzstuvwybpl”;
(9) 请编写程序读取数据内容,把数据排序后写入ss.txt中;
(10) 获取每次读取数据的行号;
(11) 登录注册IO版。
7、多线程
是指从软件或者硬件上实现多个线程并发执行的技术。具有多线程能力的计算机因有硬件支持而能够在同一时间执行多于一个线程,进而提升整体处理性能。具有这种能力的系统包括对称多处理机、多核心处理器以及芯片级多处理(Chip-level multithreading)或同时多线程(Simultaneous multithreading)处理器。在一个程序中,这些独立运行的程序片段叫作“线程”(Thread),利用它编程的概念就叫作“多线程处理(Multithreading)”。具有多线程能力的计算机因有硬件支持而能够在同一时间执行多于一个线程(台湾译作“执行绪”),进而提升整体处理性能。
1) 多线程
了解什么是线程,什么是多线程,理解java程序的运行原理,掌握多线程的实现方案,如何获取和设置线程名称、线程的生命周期、如何解决线程安全问题、线程同步、Lock锁、死锁问题、线程间通信、线程的状态及状态转换、线程池。
2) 多线程面试题
(1) 多线程有几种实现方案,分别是哪几种?
(2) 同步有几种方式,分别是什么?
(3) 启动一个线程是run()还是start()?它们的区别?
(4) sleep()和wait()方法的区别;
(5) 为什么wait(),notify(),notifyAll()等方法都定义在Object类中;
(6) 线程的生命周期图。
3) 设计模式
了解什么是设计模式,设计模式的分类,熟练掌握单例设计模式(懒汉式、饿汉式)。
8 、网络编程
网络编程最主要的工作就是在发送端把信息通过规定好的协议进行组装包,在接收端按照规定好的协议把包进行解析,从而提取出对应的信息,达到通信的目的。
9、反射
JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。
Java新特性:(重点及理解)
Java7特性重点:
switch支持String、泛型自动类型推断
理解:可catch多个异常,异常之间使用“|”分隔
Java8特性重点:Lambda表达式、接口中的默认方法和静态方法、新的Date API。
大家凑合着看看吧。
视频教程你可以去B站上看一下老杜的159集的视频教程,这套视频教程在B站上的播放量是140多万,你说这套视频教程好不好呢?
参考技术A先介绍一下主要学习哪些内容吧!
1、Java语法
通过任何一本java入门书籍,都可以学会java的基本语法。千万不要认为,你把书上的例子程序都能写出来就算是学会java语法了。想要真正掌握,还需要做大量的测试题。对语法不准确的理解,会是你写的代码出现逻辑错误。而这些错误会使你在真正的项目开发中吃尽苦头:你认为正确才会写上去。而在几十万代码中找出几行有逻辑错误的代码,非常困难。因为你几乎不会怀疑你认为正确的代码存在错误。
2、常用类
永远不要写别人已经实现的代码。有很多功能,用JDK中现有的类就可以完成。你需要熟悉JDK,可以通过研究JDK帮助文档和JDK源代码的方式,逐渐了解,你需要的类都在什么地方。一方面,要熟悉有哪些可以直接使用的资源;另一方面,学习一下,SUN公司的工程是怎样写代码的。
3、IDE集成开发环境
现在企业最常用的是IBM公司的eclipse,类似的还有JBuilder、Idea、NetBeans等等。毕竟,只有5%的顶尖高手在使用简单的文本编辑器在写java代码。多数程序员都是在使用这些东西。
4、 数据库
mysql,Oracle,DB2。小项目多数使用MySql这样的免费数据库。大一些的项目会考虑使用Oracle或者DB2。 Java项目很少使用SqlServer。因此,你还需要学习数据库方面的一些知识。可以从SQL语言开始。这些数据库都支持标准SQL,学会基本的SQL,参考具体的数据库手册,就可以完成一般的项目开发了。当然,要想使你的程序运行的效率更高,需要更深入的学习。大部分的程序优化,都是从这部分开始的。
5、 JDBC Java数据库连接
使用Java程序操作数据库。这部分非常重要,几乎所有的企业项目都会用到。
6、 html CSS javascript
HTML-- 超文本标记语言。
CSS --层叠样式表。
JavaScript--是一种由Netscape的LiveScript发展而来的脚本语言。
准确的说,这些东西和Java语言本身关系不大。但是,现在的企业项目,以B/S结构的居多。因此,我们的Java程序,会有大量的机会和它们打交道。需要提前准备一下。
7、你需要学习如何使用及管理WEB服务器,例如tomcat,并且知道如何在其基础上扩展和维护WEB程序,如何使用它的附加服务,如连接池。
8、 JSP Servlet
这两个是初级Java程序员必须掌握的基本技能,是所有B/S结构框架的基础。相应的,还需要学习EL以及JSTL(StandardTagLibraries)和可以选择的第三方TagLibraries,以提高表示层的处理能力。
9、企业流行框架 Struts、Spring、Hibernate等
10、Java设计模式
有一些特殊的功能,只有按照特定的设计模式才能实现。如果你有了5万行以上的代码经验,可以开始研究一下设计模式。
11、你还要跟上技术发展的步伐,了解在Java项目中使用的新技术。如Ajax等。
还有很多要学习的内容。先介绍这么多吧,自己学习这些内容,估计需要2年左右。如果有个好的指导老师,在培训学校进行系统学习,则需要4-5个月。
如果选择培训,一定要选择拥有多年JAVA项目开发经验、测试经验、及项目管理经验,采用“教”“练”结合,用真实项目案例进行训练的教学方式。让学员掌握实用的技能,在毕业后就有着实战项目开发经验,立刻上岗,成为诸多企业抢手的人才。
参考技术B随着社会信息的发展,Java技术已经无处不在,无论是手机软件、手机Java游戏还是电脑软件等,只要你使用到电子产品就会碰到和Java有关的东西,更多的企业正采用Java语言开发网站,而在所有程序员中,Java开发工程师就占据20%的比例,不可否认,Java语言有着广泛的行业发展前景,它在行业中的影响力已是不可避免的。
java学习作为一名java初学者,如何快速学习?学java无非就是自学和报班这两种方式,至于java自学还是报班好,这个还是需要根据您自身的条件来判断的。如果您自控能力、自学能力且有基础那自学好。反之报班好。下面跟您说一下java自学与报java培训班学的不同之处,供您参考。
Java自学:好的地方是省钱,不太好的就是学习时间不确定,学习周期很容易拉长,学习不够系统,对于没有基础的或者自控力不强的人来说,也容易导致半途而废。遇到不懂的问题没有人解答,难以往下进行学习,而且容易学的半知半解。
Java培训:学习时间相对较短,整体学习比较全面,学习内容也比较集中。专业老师按照大纲进行系统授课,在学习中遇到技术问题能够快速得到解决,同时还有专项的练习相对于自学,学习气氛更加浓厚,跟同期学员对问题的探讨,对拓展思路有很大的帮助。并且像一些专业的培训机构,培训完后有相应的就业课程和就业指导,比起自学来说求职胜算更大。
如果您学Java是因为单纯的兴趣爱好,自学是一个很不错的选择。但如果您想通过学Java技术转行的话,那么最好是选择参加Java培训班。当然,可能现在的您感觉参加Java培训班学费很贵,但是对于可以通过学习找到工作,还是比较值得的。
总之,零基础小白学习JAVA要懂得一个道理,学习和掌握java相关技术也非一朝一夕之事,不可能一蹴而就,除了知识理论的学习,还需要后续更深入的学习和大量的实践,所以需要你一个良好的学习规划。
另外,所有语言的知识体系分为三大块:
数据存储 (内存,文件,数据库,分布式,集群, 关系型 ,非关系型 。。)
业务逻辑 (业务需求,语言语法,算法,类库框架,性能优化等)
信息交互(展示)(多端,app,小程序,公众号,移动端,pc端,web开发等。。)
这三块知识作为学习来说,可以有侧重,但是不能有某一块完全不懂。
java初学者学习路线推荐:
个人推荐的学习方法是:先学java前端,也就是HTML,css,js,因为学习java以后肯定是往java ee方向发展的,学习完前端,在学习后端很多东西比计较容易理解!
其中J2SE是关键,如果学好了java se 部分,基础扎实了,后面进阶学习也比较轻松!
补充说明一下:我觉得学习java比较合适的方法是先把所有的知识点过一遍,然后把所有的知识点串起来,边做开发边补充,就像写文章一样,先写好框架,然后再去润色填充。因为前期在学习的时候你不知道用在哪里,不知道用途,没有学习的目的,所以很多概念就很难理解,时间久了也容易遗忘。但是如果你直接从实践开始学习,很多知识点都充串联起来了,而且会印象深刻,当然前提条件是你已经入门,已经能写一些简单的程序,我个人现在也是按照这个方式在学习了,感觉很有效。
①基础语法。也就是我们常说,各种编程语言都有的部分,数据类型,数组,for循环,do-while,switch……等等,是学习任何编程语言的基础,很关键。
②面对对象:①类和对象;②Java的三大特性(封装、继承、多态);
③工具类:①异常和异常处理;②集合框架(主要是List和Map);
④常用的流(stream):①输入流;②输出流;③缓冲流;
⑤网络与线程:①Socket ; ②多线程(Thread,Runnable);
⑥数据操作:①Mysql、Oracle; ②JDBC;
⑦web基础:①Html/css;②Javascript;③JQuery;
⑧框架。
只要学会上面的前7条,基本上从前台到后台开发常见的应用还是没太大问题的,当然学习了框架以后,那就最好了,但关键还是要学好基础
JAVA快速入门的方法:
1、时刻提醒自己Java是一种OOP语言工具,而不仅仅是编码,只有这样才能总体把握和运用Java。
2、在学习的过程中,最好能够【了解Java】的底层机制,而不是仅仅停留在表层,不是抄书上的例子运行出结果就可以。要注意,即便对一个简单的例子也要有耐心去琢磨、调试、改动。
3、在学习的过程中一定要动手做、写代码。很多东西和体会必须自己动手才能真正属于自己,最好能参与一些实际的项目。
4、在学到一定阶段后,应该开始学习一些更多、更复杂的知识。
想了解更多有关Java的相关信息,推荐咨询【达内教育】。【达内教育】重磅推出“因材施教、分级培优”创新教学模式,同一课程方向,面向不同受众群体,提供就业、培优、才高三个级别教学课程,达内“因材施教、分级培优“差异化教学模式,让每一位来达内学习的学员都能找到适合自己的课程。达内IT培训机构,试听名额限时抢购。
如何快速的学好java?
好的学习方法对于你的学习至关重要,对于每一个刚开始学习Java的程序员新人来说,都希望有一种快速学习的方法,漫无目的和长时间的学习很容易消耗你的信息,最后学的混乱,也没有实质性的收获,以至于学习到最后越来越焦虑。
初学者想要快速学习Java技术的心情大家都可以理解,但是有一句话:欲速则不达。盲目的追求快并不能达到理想的学习效果,问题来了,那么作为Java新人如何快速的学习Java编程呢?
新人学习进步非常缓慢,是因为很多的Java难题自己都没有办法解决,身边没有懂技术的人,所以只能一直在网上苦苦查找答案,就算你找到了解答,但是也不一定能够保证是对的。
初学者如何快速学Java?
方法1:Java初学者可以加入一个比较好的Java学习交流群,或者论坛,群不需要加的太多,在群中提出问题,有时候其他人的只言片语也可以帮助你走出困境。多与技术好的人交流沟通,你的技术才能变得更好。比如我的这个技术交流群
我创建的Java自学交流裙,前面输入是:926中间是:452最后连起来:303,需要java最新录制视频教程及学习路线,开发工具,jar包。源码等都可以找我,有遇见任何问题都可以随时来交流,只有不断的碰撞和交流,我们才能发现解决自己的问题,以此取长补短。
方法2:对于初学者来说快速学Java,还有一个有效的办法就是收集有用代码和工具,一些代码是可以重复使用的,随着你Java代码的练习越来越多,你对Java代码编写越来越得心应手,你就会发现你之前搜集的有用的代码和工具,大大节省了你敲代码的时间,比如工具类的:StringUtils(字符串工具),DBUtils(数据库工具)等等。
方法3:养成良好的记录笔记的习惯,因为在快速学习Java的过程中,记录显得尤为重要,比如在Java学习中,把你碰到的问题,或者突然间的奇思妙想记录下来,不时翻翻,你会很清楚你一路以来的学习历程是怎样的。
它不仅是你Java学习的成长日记,更是鼓励支持你坚持学Java的好法宝,还可以成为你Java学习的动力源泉。
好的学习方法再加上良好的习惯,你会发现学习Java也不是一件多么困难的事情。当然,以上这些方法适用于那些有足够时间学习,或者是有较强自控力的人,如果你面临的就业,面临着经济问题,很难有一颗平常心去好好学习。
总之,学好Java技术才你才能享受生活带来的乐趣,为了你的梦想,努力学习吧。
有哪些适合java初学者的项目?
20个当时初学时的Java 练手项目,结尾提供项目源码。
需要可以群文件自行下载
随着社会信息的发展,Java技术已经无处不在,无论是手机软件、手机Java游戏还是电脑软件等,只要你使用到电子产品就会碰到和Java有关的东西,更多的企业正采用Java语言开发网站,而在所有程序员中,Java开发工程师就占据20%的比例,不可否认,Java语言有着广泛的行业发展前景,它在行业中的影响力已是不可避免的。
如何快速的学好java?学java无非就是自学和报班这两种方式,至于java自学还是报班好,这个还是需要根据您自身的条件来判断的。如果您自控能力、自学能力且有基础那自学好。反之报班好。下面跟您说一下java自学与报java培训班学的不同之处,供您参考。
Java自学:好的地方是省钱,不太好的就是学习时间不确定,学习周期很容易拉长,学习不够系统,对于没有基础的或者自控力不强的人来说,也容易导致半途而废。遇到不懂的问题没有人解答,难以往下进行学习,而且容易学的半知半解。
Java培训:学习时间相对较短,整体学习比较全面,学习内容也比较集中。专业老师按照大纲进行系统授课,在学习中遇到技术问题能够快速得到解决,同时还有专项的练习相对于自学,学习气氛更加浓厚,跟同期学员对问题的探讨,对拓展思路有很大的帮助。并且像一些专业的培训机构,培训完后有相应的就业课程和就业指导,比起自学来说求职胜算更大。
如果您学Java是因为单纯的兴趣爱好,自学是一个很不错的选择。但如果您想通过学Java技术转行的话,那么最好是选择参加Java培训班。当然,可能现在的您感觉参加Java培训班学费很贵,但是对于可以通过学习找到工作,还是比较值得的。
总之,零基础小白学习JAVA要懂得一个道理,学习和掌握java相关技术也非一朝一夕之事,不可能一蹴而就,除了知识理论的学习,还需要后续更深入的学习和大量的实践,所以需要你一个良好的学习规划。
另外,所有语言的知识体系分为三大块:
数据存储 (内存,文件,数据库,分布式,集群, 关系型 ,非关系型 。。)
业务逻辑 (业务需求,语言语法,算法,类库框架,性能优化等)
信息交互(展示)(多端,app,小程序,公众号,移动端,pc端,web开发等。。)
这三块知识作为学习来说,可以有侧重,但是不能有某一块完全不懂。
先学习j2se
要学习j2ee就要先学习j2se,刚开始学习j2se先建议不要使用IDE,然后渐渐的过渡到使用IDE开发,毕竟用它方便嘛。学习j2se推荐两本书,《java2核心技术一二卷》,《java编程思想》,《java模式》。其中《java编程思想》要研读,精读。这一段时间是基本功学习,时间会很长,也可能很短,这要看学习者自身水平而定。
不要被IDE纠缠
在学习java和j2ee过程中,你会遇到五花八门的IDE,不要被他们迷惑,学JAVA的时候,要学语言本身的东西,不要太在意IDE的附加功能,JAVA编程在不同IDE之间的转换是很容易的,过于的在意IDE的功能反而容易耽误对语言本身的理解。目前流行的IDE有jbuilder,eclipse和eclipse的加强版WSAD。用好其中一个就可以了,推荐从eclipse入手j2ee。因为Jbuilder更适合于写j2se程序。
选择和学习服务器使用配置
当你有了j2se和IDE的经验时,可以开始j2ee的学习了,web服务器:tomcat,勿庸置疑,tomcat为学习web服务首选。而应用服务器目前主要有三个:jboss、weblogic、websphere。有很多项目开始采用jboss,并且有大量的公司开始做websphere或weblogic向jboss应用服务器的移植(节省成本),这里要说的是,学习tomcat和jboss我认为是首选,也是最容易上手的。学习服务器使用配置最好去询问有经验的人(有条件的话),因为他们或许一句话就能解决问题,你自己上网摸索可能要一两天(我就干过这种傻事),我们应该把主要时间放在学习原理和理论上,一项特定技术的使用永远代替不了一个人的知识和学问。
学习web知识
如果你是在做电子商务网站等时,你可能要充当几个角色,这是你还要学习: .'l:8SxT?L
html,可能要用到dreamwave等IDE。 ZO(T u%xU
Javascript,学会简单的数据校验,数据联动显示等等
J2eeAPI学习
学习j2eeAPI和学习服务器应该是一个迭代的过程。
先学习jsp和servlet编程,这方面的书很多,我建立看oreilly公司的两本《jsp设计》和《java servlet编程》,oreilly出的书总是那本优秀,不得不佩服。
学习jdbc数据库编程,j2ee项目大多都是MIS系统,访问数据库是核心。这本应属于j2se学习中,这里拿出来强调一下。
学习jndi api,它和学习ejb可以结合起来。
学习ejb api,推荐书《精通ejb》
经过上面的这些的学习,大概可以对付一般的应用了。
有人说跟着sun公司的《j2ee tutorial》一路学下来,当然也可以。
学习ejb设计模式和看代码(最重要)
设计模式是练内功,其重要性可以这么说吧,如果你不会用设计模式的话,你将写出一堆使用了ejb的垃圾,有慢又是一堆bug,其结果不如不用ejb实现(ejb不等于j2ee)
无论学习什么语言,都应该看大量代码,你看的代码量不到一定数量,是学不好j2ee的
目前有很多开源的工程可以作为教材:
jive论坛
petstore sun公司
dune sun公司
等等,研读一个,并把它用到自己的工程中来。
J2ee其他学习
当你渐渐对j2ee了解到一定深度时,你要开始关注当前领域中的一些技术变化,J2ee是一块百家争鸣的领域,大家都在这里提出自己的解决方案,例如structs,hiberate,ofbiz等等,学习这些东西要你的项目和目标而定,预先补充一下未尝不可,但不用涉及太深,毕竟学习原理和理论是最最重要的事。
目前常见j2eeAPI
JavaServer Pages(JSP)技术1.2
Java Servlet技术2.3
JDBC API 2.0
Java XML处理API(JAXP)1.1
Enterprise JavaBeans技术2.0
Java消息服务(JMS)1.0
Java命名目录接口(JNDI)1.2
Java事务API(JTA) 1.0
JavaMail API 1.2
JavaBeans激活架构(JAF)1.0
J2EE连接器体系结构(JCA)1.0
Java认证和授权服务(JAAS)1.0
学习上面的某些API要以你的项目而定,了解所有他们总之是有好处的
上面印证了大家说的一句话,java语言本身不难学,但是技术太多,所以学java很费劲。回想一下,基本上每个初学者,在刚学习java的时候可能都会问别人这么一句话,你怎么知道的哪个方法(api)在哪个包里的?呵呵,无他,唯手熟尔。
======================================
J2EE总体的学习计划
第一部分:
JAVA语言基础知识。包括异常、IO流、多线程、集合类、数据库。(切记基础知识一定要时时刻刻巩固)
要求:对java的封装,生命周期等有一定的了解;
异常------掌握try-catch-finally的使用
IO流------掌握字节流、字符流和对象序列化的处理.。熟练使用各种输入、输出流类(InputStream、 OutputStream、FileInputStream、FileOutputStream、DataInputStream、 DataOutputStream、BufferedInputStream、BufferedOutputStream、Reader、Writer、 InputStreamReader、OutputStreamWriter、BufferReader、BufferedWriter、 ObjectInputStream、ObjectOutputStream)。
多线程-------掌握多线程实现的两种实现方法,分别是继承Thread类与实现Runnable接口。理解线程间的同步与互斥。
集合类-------掌握Set、Collection、Map、List、Iterator、Enumeration接口的使用,掌握HashSet、ArrayList、Vector、HashMap、HashTable类的使用。
数据库-------掌握JDBC API的使用,包括DriverManager类、Connection接口、Statement类和接口、PreparedStatement接口、ResultSet接口。
还有了解java反射机制,对Java1.5的新功能必须有了解与使用,泛型等。.
另外-------理解Unicode、GB2132、GBK、UTF-8、ISO8859编码方式。
参考:《Java编程思想》、张孝祥视频教学。
第二部分:
JAVA网络编程。包括Socket、RMI、HTML、XML、JSP、JavaBean、Servlet。
要求:Socket--------了解java.io包中的套接口类和服务器套接口类的使用。
RMI--------掌握RMI基本工作原理、掌握定义远程服务接口类、远程接口类、客户端调用类和部署、编译RMI应用程序。
HTML--------了解HTML语言的语法、各种标签。
JSP-------掌握JSP2.0语法、隐含对象、EL、JSTL1.1、JSP自定标签。
JavaBean-------理解JavaBean的特点和事件模型。
XML--------了解XML语言的语法、DTD、Schema。
Servlet---------掌握HTTP协议、Servlet工作过程、Servlet会话跟踪、Servlet过滤器、Serlvet事件侦听器、配置web.xml。
UML-------掌握用例图、类图、活动图、顺序图、状态图。
Aglet-------学会安装使用tahiti服务器,掌握Aglet API。[以后再学,在彭老师的项目才会用到]
开发工具------掌握Rational Rose 、ant 、cvs版本控制、myeclipse、dreamweave等开发工具使用。
另外-------学习过程中学会使用Tomcat、JBoss/Weblogic服务器
参考书:《JSP2.0技术手册》林上杰编著;
《深入体会Java Web开发内幕---核心基础》
在JSP上不要花太多时间,在时间放在servlet多一些.
第三部分:
流行MVC架构和Java对象持久化技术。包括webwork、Spring、Hibernate
要求:MVC-------理解MVC设计模式、处理过程。
webwork-------理解webwork实现MVC的机制、工作流程。掌握配置webwork应用、webwork控制器组 件、webwork应用的国际化、异常处理、webwork标签库。(其实很多遗留系统用的是Struts,但现在越来越少人用了,所以我鼓励你们学 webwork,但要必须要了解一下Struts)
Spring-------掌握控制反转(IoC)、面向方面编程(AOP)、事务服务(JTA)、邮件服务(JavaMail)、持久化服务(DAO、JDBC、ORM)、远程服务(RMI)。
Hibernate--------理解ORM,掌握映射对象标识符、映射关系(一对多、多对多、一对一)、映射类型、检索策略、检索方式、数据库事务与并发、管理Hibernate的缓存。
学习过程:先学习webwork2,再学习Hibernate,最后学Spring。
下面的东西有时间了解一下:
测试/敏捷开发-----关注测试,掌握Junit单元测试框架,以及现在两个流行的mock工具EasyMock/JMock,熟 悉其中一种。(提示:测试非常重要,有效的测试可以减少很多开发的时间,当然刚开始觉得不耐烦,好像没有必要写测试代码,一定要说服自己尝试写测试代码, 或多或少的)
UNIX系统------了解最主要的shell编程,及主要的相关的命令行操作.
AJAX-----了解基本的javascript,csss,以及ajax常用的用法,还有JSON框架.
(ajax的框架太多,但不要花太多时间去学,因为你不知道公司用不用ajax,而且用的那一框架你没有办法知道,所以懂最基础就可以了)
参考书:《webwork in action中文版》
《精通Struts》、《精通Hibernate》孙卫琴著,
《Spring技术手册》林信良著
《JUnit in action中文版》Vincent Massol著的
书籍只是用来入门的,其他的工具必须多上英文网址,尽量多看一些英文文档,提高自己的水平,同时有空的时候也可以下载的一些开源项目的文档。
最后一句话:无论什么技术,学了不要以为自己多牛,学技术只是为了更好提高自己做项目的能力以及提升自身的水平。你做的项目效果怎样才能最终看出你自身的水平。 参考技术C
Java前景是很不错的,像Java这样的专业还是一线城市比较好,师资力量跟得上、就业的薪资也是可观的,
0基础学习Java是没有问题的,关键是找到靠谱的Java培训机构,你可以深度了解机构的口碑情况,问问周围知道这家机构的人,除了口碑再了解机构的以下几方面:
1. 师资力量雄厚
要想有1+1>2的实际效果,很关键的一点是师资队伍,你接下来无论是找个工作还是工作中出任哪些的人物角色,都越来越爱你本身的技术专业java技术性,也许的技术专业java技术性则绝大多数来自你的技术专业java教师,一个好的java培训机构必须具备雄厚的师资力量。
2. 就业保障完善
实现1+1>2效果的关键在于能够为你提供良好的发展平台,即能够为你提供良好的就业保障,让学员能够学到实在实在的知识,并向java学员提供一对一的就业指导,确保学员找到自己的心理工作。
3. 学费性价比高
一个好的Java培训机构肯定能给你带来1+1>2的效果,如果你在一个由专业的Java教师领导并由Java培训机构自己提供的平台上工作,你将获得比以往更多的投资。
希望你早日学有所成。
参考技术D 首先我要给你说的是,任何一个东西从零到精通,都是需要一个过程的,都是需要我们慢慢的去渡过这个阶段,我们才能慢慢的掌握,其次,毕竟这是一门编程语言,你学精通就可以拿到一份不错的高薪工作,所以说,对于任何一个零基础的小白来说,都是比较难的。所以零基础小白入门学习java,你一定要规划好自己的学习方法和学习方式。
选择机构重点要多试听,多比较,毕竟每个人接受信息的方式不一样,老师技术再好,如果不能有效的传达给学生,那对学生来说也是没用的。所以建议试听后找到适合自己的最重要。
学习Java的话,可以考虑尚学堂啊,尚学堂就是从Java起家的,已经创办14年。
因为尚学堂的口碑和学习效果都是可以保证的,我就是在朋友的推荐下去尚学堂学习的,已经学完找到工作。
尚学堂有领先的、实战化的课程体系。独立的项目开发部,承接国内很多企业的项目。
有超强的师资力量,老师都是业内大牛,8年以上的授课经验可以讲得更加容易理解,学习更有效率。
国内第一的每周5-20家上门企业招聘;双保险式的就业服务;免费提供猎头服务。
全国唯一”从零到百万年薪”的服务体系
有这么多的优势,学习编程肯定是去尚学堂学习呀,可以学习到技术,又有好的就业推荐。完全没有担心
还可以参加参加线上百战程序员,边工作边学习
以上是关于java学习作为一名java初学者,如何快速学习j的主要内容,如果未能解决你的问题,请参考以下文章