import java.util.random;public class arraytools { private int[] data = new int[10]; private int size; // 数组实现自动扩容 public void expansion() { if (data.length == size) { int[] t = new int[2 * data.length]; for (int i = 0; i index;i--){ data[i]=data[i-1]; } data[index]=x; size ; } // 数组删除数据功能 public void delete(int index){ if(index>size||index<0){ system.out.println("超出范围,数据最多有:" size);return; } for(int i=index;i
1、对象的初始化(1) 非静态对象的初始化 在创建对象时,对象所在类的所有数据成员会首先进行初始化。
基本类型:int型,初始化为0。 如果为对象:这些对象会按顺序初始化。
※在所有类成员初始化完成之后,才调用本类的构造方法创建对象。 构造方法的作用就是初始化。
(2) 静态对象的初始化 程序中主类的静态变量会在main方法执行前初始化。 不仅第一次创建对象时,类中的所有静态变量都初始化,并且第一次访问某类(注意此时 未创建此类对象)的静态对象时,所有的静态变量也要按它们在类中的顺序初始化。
2、继承时,对象的初始化过程 (1) 主类的超类由高到低按顺序初始化静态成员,无论静态成员是否为private。 (2) 主类静态成员的初始化。
(3) 主类的超类由高到低进行默认构造方法的调用。注意,在调用每一个超类的默认构造 方法前,先进行对此超类进行非静态对象的初始化。
(4) 主类非静态成员的初始化。 (5) 调用主类的构造方法。
3、关于构造方法 (1) 类可以没有构造方法,但如果有多个构造方法,就应该要有默认的构造方法,否则在继承此类时,需要在子类中显式调用父类的某一个非默认的构造方法了。 (2) 在一个构造方法中,只能调用一次其他的构造方法,并且调用构造方法的语句必须是 第一条语句。
4、有关public、private和protected (1) 无public修饰的类,可以被其他类访问的条件是:a.两个类在同一文件中,b.两个类 在同一文件夹中,c.两个类在同一软件包中。 (2) protected:继承类和同一软件包的类可访问。
(3) 如果构造方法为private,那么在其他类中不能创建该类的对象。 5、抽象类 (1) 抽象类不能创建对象。
(2) 如果一个类中一个方法为抽象方法,则这个类必须为abstract抽象类。 (3) 继承抽象类的类在类中必须实现抽象类中的抽象方法。
(4) 抽象类中可以有抽象方法,也可有非抽象方法。抽象方法不能为private。
(5) 间接继承抽象类的类可以不给出抽象方法的定义。 6、final关键字 (1) 一个对象是常量,不代表不能转变对象的成员,仍可以其成员进行操作。
(2) 常量在使用前必须赋值,但除了在声明的同时初始化外,就只能在构造方法中初始化 。 (3) final修饰的方法不能被重置(在子类中不能出现同名方法)。
(4) 如果声明一个类为final,则所有的方法均为final,无论其是否被final修饰,但数据 成员可为final也可不是。 7、接口interface (用implements来实现接口) (1) 接口中的所有数据均为 static和final即静态常量。
尽管可以不用这两个关键字修饰 ,但必须给常量赋初值。 (2) 接口中的方法均为public,在实现接口类中,实现方法必须可public关键字。
(3) 如果使用public来修饰接口,则接口必须与文件名相同。 8、多重继承 (1) 一个类继承了一个类和接口,那么必须将类写在前面,接口写在后面,接口之间用逗 号分隔。
(2) 接口之间可多重继承,注意使用关键字extends。 (3) 一个类虽只实现了一个接口,但不仅要实现这个接口的所有方法,还要实现这个接口 继承的接口的方法,接口中的所有方法均须在类中实现。
9、接口的嵌入 (1) 接口嵌入类中,可以使用private修饰。此时,接口只能在所在的类中实现,其他类不 能访问。
(2) 嵌入接口中的接口一定要为public。 10、类的嵌入 (1) 类可以嵌入另一个类中,但不能嵌入接口中。
(2) 在静态方法或其他方法中,不能直接创建内部类对象,需通过手段来取得。 手段有两种: class a { class b {} b getb() { b b = new b(); return b; } } static void m() { a a = new a(); a.b ab = a.getb(); // 或者是 a.b ab = a.new b(); } (3) 一个类继承了另一个类的内部类,因为超类是内部类,而内部类的构造方法不能自动 被调用,这样就需要在子类的构造方法中明确的调用超类的构造方法。
接上例: class c extends a.b { c() { new a().super(); // 这一句就实现了对内部类构造方法的调用。 } } 构造方法也可这样写: c(a a) { a.super(); } // 使用这个构造方法创建对象,要写成c c = new c(a); a是a的对象。
11、异常类 java中除了runtimeexception 类,其他异常均须捕获或抛出。至于数据库,web,jsp,js之类的那是高级部分了。
import java.util.random;public class arraytools { private int[] data = new int[10]; private int size;
// 数组实现自动扩容 public void expansion() { if (data.length == size) { int[] t = new int[2 * data.length]; for (int i = 0; i < data.length; i ) { t[i] = data[i]; } data = t; } } // 数组增加数据功能 public void add(int x,int index){ expansion(); for(int i=size;i>index;i--){ data[i]=data[i-1]; } data[index]=x; size ; } // 数组删除数据功能 public void delete(int index){ if(index>size||index<0){ system.out.println("超出范围,数据最多有:" size);return; } for(int i=index;i
public static void main(string[] args) { random r = new random(); arraytools array=new arraytools(); system.out.println("随机生成的数组是:"); for (int i = 0; i < array.data.length; i ) { array.data[i]=r.nextint(100); system.out.print(array.data[i] " "); array.size ; } system.out.println(); array.add(1000,2); array.add(1000,3); array.add(1000,4); array.show(); array.delete(50); array.show(); }}
有说明
(1) 类名首字母应该大写。
字段、方法以及对象(句柄)的首字母应小写。对于所有标识符,其中包含的所有单词都应紧靠在一起,而且大写中间单词的首字母。
例如: thisisaclassname 若在定义中出现了常数初始化字符,则大写static final基本类型标识符中的所有字母。这样便可标志出它们属于编译期的常数。
java包(package)属于一种特殊情况:它们全都是小写字母,即便中间的单词亦是如此。对于域名扩展名称,如com,org,net或者edu等,全部都应小写(这也是java 1.1和java 1.2的区别之一)。
(2) 为了常规用途而创建一个类时,请采取“经典形式”,并包含对下述元素的定义: equals() hashcode() tostring() clone()(implement cloneable) implement serializable (3) 对于自己创建的每一个类,都考虑置入一个main(),其中包含了用于测试那个类的代码。为使用一个项目中的类,我们没必要删除测试代码。
若进行了任何形式的改动,可方便地返回测试。这些代码也可作为如何使用类的一个示例使用。
(4) 应将方法设计成简要的、功能性单元,用它描述和实现一个不连续的类接口部分。理想情况下,方法应简明扼要。
若长度很大,可考虑通过某种方式将其分割成较短的几个方法。这样做也便于类内代码的重复使用(有些时候,方法必须非常大,但它们仍应只做同样的一件事情)。
(5) 设计一个类时,请设身处地为客户程序员考虑一下(类的使用方法应该是非常明确的)。然后,再设身处地为管理代码的人考虑一下(预计有可能进行哪些形式的修改,想想用什么方法可把它们变得更简单)。
(6) 使类尽可能短小精悍,而且只解决一个特定的问题。下面是对类设计的一些建议:关键字: ■一个复杂的开关语句:考虑采用“多形”机制 ■数量众多的方法涉及到类型差别极大的操作:考虑用几个类来分别实现 ■许多成员变量在特征上有很大的差别:考虑使用几个类 。
(7) 让一切东西都尽可能地“私有”——private。可使库的某一部分“公共化”(一个方法、类或者一个字段等等),就永远不能把它拿出。
若强行拿出,就可能破坏其他人现有的代码,使他们不得不重新编写和设计。若只公布自己必须公布的,就可放心大胆地改变其他任何东西。
在多线程环境中,隐私是特别重要的一个因素——只有private字段才能在非同步使用的情况下受到保护。 (8) 谨惕“巨大对象综合症”。
对一些习惯于顺序编程思维、且初涉oop领域的新手,往往喜欢先写一个顺序执行的程序,再把它嵌入一个或两个巨大的对象里。根据编程原理,对象表达的应该是应用程序的概念,而非应用程序本身。
(9) 若不得已进行一些不太雅观的编程,至少应该把那些代码置于一个类的内部。 (10) 任何时候只要发现类与类之间结合得非常紧密,就需要考虑是否采用内部类,从而改善编码及维护工作(参见第14章14.1.2小节的“用内部类改进代码”)。
(11) 尽可能细致地加上注释,并用javadoc注释文档语法生成自己的程序文档。 (12) 避免使用“魔术数字”,这些数字很难与代码很好地配合。
如以后需要修改它,无疑会成为一场噩梦,因为根本不知道“100”到底是指“数组大小”还是“其他全然不同的东西”。所以,我们应创建一个常数,并为其使用具有说服力的描述性名称,并在整个程序中都采用常数标识符。
这样可使程序更易理解以及更易维护。关键字: ■一个复杂的开关语句:考虑采用“多形”机制 ■数量众多的方法涉及到类型差别极大的操作:考虑用几个类来分别实现 ■许多成员变量在特征上有很大的差别:考虑使用几个类 。
(7) 让一切东西都尽可能地“私有”——private。可使库的某一部分“公共化”(一个方法、类或者一个字段等等),就永远不能把它拿出。
若强行拿出,就可能破坏其他人现有的代码,使他们不得不重新编写和设计。若只公布自己必须公布的,就可放心大胆地改变其他任何东西。
在多线程环境中,隐私是特别重要的一个因素——只有private字段才能在非同步使用的情况下受到保护。 (8) 谨惕“巨大对象综合症”。
对一些习惯于顺序编程思维、且初涉oop领域的新手,往往喜欢先写一个顺序执行的程序,再把它嵌入一个或两个巨大的对象里。根据编程原理,对象表达的应该是应用程序的概念,而非应用程序本身。
(9) 若不得已进行一些不太雅观的编程,至少应该把那些代码置于一个类的内部。 (10) 任何时候只要发现类与类之间结合得非常紧密,就需要考虑是否采用内部类,从而改善编码及维护工作(参见第14章14.1.2小节的“用内部类改进代码”)。
(11) 尽可能细致地加上注释,并用javadoc注释文档语法生成自己的程序文档。 (12) 避免使用“魔术数字”,这些数字很难与代码很好地配合。
如以后需要修改它,无疑会成为一场噩梦,因为根本不知道“100”到底是指“数组大小”还是“其他全然不同的东西”。所以,我们应创建一个常数,并为其使用具有说服力的描述性名称,并在整个程序中都采用常数标识符。
这样可使程序更易理解以及更易维护。 (13) 涉及构建器和异常的时候,通常希望重新丢弃在构建器中捕获的任何异常——如果它造成了那个对象的创建失败。
这样一来,调。
java语法基础1,关键字:其实就是某种语言赋予了特殊含义的单词。
保留字:其实就是还没有赋予特殊含义,但是准备日后要使用过的单词。2,标示符:其实就是在程序中自定义的名词。
比如类名,变量名,函数名。包含 0-9、a-z、$、_ ; 注意: 1),数字不可以开头。
2),不可以使用关键字。3,常量:是在程序中的不会变化的数据。
4,变量:其实就是内存中的一个存储空间,用于存储常量数据。 作用:方便于运算。
因为有些数据不确定。所以确定该数据的名词和存储空间。
特点:变量空间可以重复使用。什么时候定义变量?只要是数据不确定的时候,就定义变量。
变量空间的开辟需要什么要素呢? 1,这个空间要存储什么数据?数据类型。 2,这个空间叫什么名字啊?变量名称。
3,这个空间的第一次的数据是什么? 变量的初始化值。变量的作用域和生存期:变量的作用域: 作用域从变量定义的位置开始,到该变量所在的那对大括号结束;生命周期: 变量从定义的位置开始就在内存中活了; 变量到达它所在的作用域的时候就在内存中消失了;数据类型: 1):基本数据类型:byte、short、int、long、float、double、char、boolean 2):引用数据类型: 数组、类、接口。
级别从低到高为:byte,char,short(这三个平级)-->int-->float-->long-->double 自动类型转换:从低级别到高级别,系统自动转的;强制类型转换:什么情况下使用?把一个高级别的数赋给一个别该数的级别低的变量;运算符号: 1)、算术运算符。 - * / % %:任何整数模2不是0就是1,所以只要改变被模数就可以实现开关运算。
:连接符。 ,-- 2)、赋值运算符。
= = -= *= /= %= 3)、比较运算符。 特点:该运算符的特点是:运算完的结果,要么是true,要么是false。
4)、逻辑运算符。 & | ^ ! && || 逻辑运算符除了! 外都是用于连接两个boolean类型表达式。
&: 只有两边都为true结果是true。否则就是false。
|:只要两边都为false结果是false,否则就是true ^:异或:和或有点不一样。 两边结果一样,就为false。
两边结果不一样,就为true. & 和 &&区别: & :无论左边结果是什么,右边都参与运算。 &&:短路与,如果左边为false,那么右边不参数与运算。
| 和|| 区别:|:两边都运算。 ||:短路或,如果左边为true,那么右边不参与运算。
5)、位运算符:用于操作二进制位的运算符。 & | ^ <> >>>(无符号右移) 练习:对两个变量的数据进行互换。
不需要第三方变量。 int a = 3,b = 5;-->b = 3,a = 5; a = a b; a =8; b = a - b; b =3;c a = a - b; a =5; a = a ^ b;// b = a ^ b;//b= a ^ b ^ b = a a = a ^ b;//a= a ^ b ^ a = b; 练习:高效的算出 2*8 ------------------> 位移运算的考验,java基础面试中它的曝光率不低哦5,语句。
if switch do while while for 这些语句什么时候用? 1)、当判断固定个数的值的时候,可以使用if,也可以使用switch。 但是建议使用switch,效率相对较高。
switch(变量){ case 值:要执行的语句;break; … default:要执行的语句; } 工作原理:用小括号中的变量的值依次和case后面的值进行对比,和哪个case后面的值相同了 就执行哪个case后面的语句,如果没有相同的则执行default后面的语句;细节:1):break是可以省略的,如果省略了就一直执行到遇到break为止; 2):switch 后面的小括号中的变量应该是byte,char,short,int四种类型中的一种; 3):default可以写在switch结构中的任意位置;如果将default语句放在了第一行,则不管expression与case中的value是否匹配,程序会从default开始执行直到第一个break出现。 2)、当判断数据范围,获取判断运算结果boolean类型时,需要使用if。
3)、当某些语句需要执行很多次时,就用循环结构。 while和for可以进行互换。
区别在于:如果需要定义变量控制循环次数。建议使用for。
因为for循环完毕,变量在内存中释放。break:作用于switch ,和循环语句,用于跳出,或者称为结束。
break语句单独存在时,下面不要定义其他语句,因为执行不到,编译会失败。当循环嵌套时,break只跳出当前所在循环。
要跳出嵌套中的外部循环,只要给循环起名字即可,这个名字称之为标号。代码片段:z: //for循环标号 for(int x=0;x<3;x ){ for(int y=0;y<2;y ){ //不带标号的就是结束整个循环体的作用,在那个循环内部就结束哪个循环 if(x==1)break; //带标号跳过break后面的语句,回到标号位置的循环,继续该循环下次的条件判断, //已决定是否执行该循环体 if(x==2&&y==1)break z; } } continue:只作用于循环结构,继续循环用的。
作用:结束本次循环,继续下次循环。该语句单独存在时,下面不可以定义语句,执行不到。
6,函 数:为了提高代码的复用性,可以将其定义成一个单独的功能,该功能的体现就是java中的函数。函数就是体现之一。
java中的函数的定义格式: 修饰符 返回值类型 函数名(参数类型 形式参数1,参数类型 形式参数1,…){ 执行语句; return 返回值; } 当函数没有具体的返回值时,返回的返回值类型用void关键字表示。如果函数的返回值类型是void时,return语句可以省略不写的,系统会帮你自动加上。
return的作用:结束函数。结束功能。
如何。
1.初级部分: java oo程序设计基础,包括 j2sdk基础、java 面向对象基础、java api使用、数据结构及算法基础、java awt图形界面程序开发; j2se平台java程序设计,包括swing图形程序设计, socket网络应用程序设计,对象序列化,java 常用数据结构,applet,流和文件,多线程程序设计; java桌面系统项目开发,4~5人 1.初级部分: java oo程序设计基础,包括 j2sdk基础、java 面向对象基础、java api使用、数据结构及算法基础、java awt图形界面程序开发; j2se平台java程序设计,包括swing图形程序设计, socket网络应用程序设计,对象序列化,java 常用数据结构,applet,流和文件,多线程程序设计; java桌面系统项目开发,4~5人组成一个项目组,项目大小为(15人*工作日); linux的基本操作,linux下的java程序开发,linux系统的简单管理; oracle数据库,包括sql/plsql;数据库和数据库设计;简单掌握oracle9i 数据库的管理; 2.中级部分: java web应用编程,包括 java oracle 编程,即jdbc;java web编程,包括jsp、servlet,javabean;java应用编程,包括weblogic、websphere、tomcat;以及利用jbuilder开发java程序; mvc与struts,学习业界通用的mvc设计模式和struts架构; java b/s商务项目开发,4~5人一个项目组,项目大小为(25人*工作日左右) 3.高级部分: j2me程序设计,包括j2ee程序、j2me; java高级程序设计(j2ee),包括j2ee体系结构和j2ee技术、ejb;weblogic使用、jbuilder开发; java和xml,包括java web service,java xml, 业界主流xml解析器程序设计; 软件企业规范和软件工程,包括uml系统建模型和设计(rational rose 200x)软件工程和业界开发规范;cvs版本控制、java code书写规范; j2ee商务应用系统项目开发,4~5人一个项目组,项目大小为(25人*工作日左右)。
java基础知识可以到it学习联盟下载。
但是这套教程只是基础。要学会真正到java就要一套完整到java视频教程。
完整的java教程可以看看it学习联盟的<>。零基础java就业班包括java基础 进阶 高级 项目。
是一套完整的java视频教程。这套教程从零基础开始教起,零基础到就业水平。
就算没基础也可以学习的。…………………………………………………………………………………… 看你问的问题,应该是对java很感兴趣,其实你可以自学java。
关于如何学习java,我刚才看到一篇很不错的文章,是一个农民工介绍自己如何自学java,并找到java的工作,里面介绍了他的学习方法和学习过程,希望对你有帮助。 我是一名地地道道的农民工,生活在经济落后的农村,有一个哥哥和一个弟弟,父母都是地道的农民,日出而作,日落而息,我从小到大学习一直很好,从小学到高一都,成绩在全级一直名列前茅,这样我也顺利了考上省的重点高中,然而,每个学期开学是家里最为难的时候,每次交学费都让父母发愁许久,家里为了给我筹钱读书,都借了不少钱,才让我读上高中。
我知道我读到高中家里已经欠了好多债,为了减轻家里的负担,我选择了退学。 2009年我高一退学,为了给家里还债,干过建筑工地的小工,搞过塑料制品加工,送水工等等。
很工资都很低,一个月也就1000多,加上加班费一个月能拿2000多一点,我每个月都向家里寄回800-1000元,到了2011年末,一次偶然的机会我接触了java,听说java的前景挺不错,工资相对于我一个农民工来说简直是天文数字,于是我在新华书店买了几本java的书,尽管白天辛苦工作,晚上回来还是坚持看书,但有于基础太差很多都很不明白,但还是坚持看,一有看1-2个小时java的书,看着看着许多基础都慢慢的学会了,但那些比较难的还是看不懂,后来还买了有些关于框架的书,还是看不懂,这样断断续续的持续了半年多,觉得自己java的基础都差不多懂了,但框架还是看不懂,还有最缺的项目经验,看了很多招聘java程序员的简介都要项目经验,相对我一个农民工来连框架都弄不明白,想找一份java工作对我来说简直是奢侈。我只想学java,并不敢想以后能从事java的工作。
一次,在百度上看到一篇让我很鼓舞的文章,是一个java高手介绍在没有基础的朋友怎么自学入门java,文章写的很好,包含了如何学习,该怎么学习,他提到一个方法就是看视频,因为看书实在太枯燥和费解的,不少是我们也看不懂,这点我真的很认同,我自己看书都看了很久才学会基础。曾经有想过参加培训,但是上万元的培训费让我望而却步,我工资这么低,每个月还有向家里汇钱,加上城市消费比较高,虽然每个月只有几百剩下,但是相对于上万万学费和四个月的吃住费用逼我连想不敢想。
于是我决定看视频,我就去搜索java的视频,虽然我零星的找到一些java的视频,但是都不系统。最重要连项目都没有。
后来我找到一份很好的视频,是it学习联盟这个网站一套视频叫<>,网址: /portal.php?mod=view&aid=5。的教程还不错,很完整。
还赠送11个顶级企业项目。价格很合理,于是我买下来。
于是开始了我的自学java的路,收到光盘后,我就开始学习,刚开始学习还不错,是从零基础教起,老师幽默风趣而又轻松的课堂教课,使我发现原来学习java并不是一件很难的事情。因为我本来基础还不错,前面的基础看一篇我就过去了,到了框架,我觉不又不是很难,可能老师太牛了,他能把复杂的问题讲的比较通俗易懂,有些难点的地方我还是连续看了五六次,把他弄懂。
每天下午6点下班后,吃了饭,马上跑回家。看视频,买了几本笔记本。
当时,为了编程还花几百元了台二手的台式电脑,配置一般,但编程是足够的。一边看视频,一边记笔记,把重点都记下来,还一边跟着老师敲代码,为了能尽早学会java。
每天都坚持学5-6个小时。经常学到晚上一点多才睡觉。
星期六,日不用上班,每天7点多起床,学到晚上11,12点。那段时间特别辛苦,特别累。
在学习java的三个多月里,除了吃饭睡觉工作,剩余的时间都在学习,因为我知道自己的计算机基础不是很好,也没有学过什么计算机,只是学了些java基础,相对于那些科班的人来说我要比他们付出更多的努力。我只能咬紧牙关,坚持下去,我不能放弃,我要完成我的梦想,我要让我的家人过上好日子。
终于三个多月后我把java教程里的内容和项目都学完了,在学项目的过程中我发现项目特别重要,他能把你学过的知识全部联系起来,能更好的理解你所学的知识。还有学习过程中,动手很重要,要经常跟着老师动手敲,动手吧,跟着做,一行一行的跟着敲,再试着加一些自己的功能,按照自己的思路敲一些代码,收获远比干听大的多。
如果遇到暂时对于一些思路不能理解的,动手写,先写代码,慢慢你就会懂了。这套视频还赠送了11个顶级企业项目,对于我没有任何经验的人来说,这个太重要了,还有在学习项目是提升能力最快的方法。
项目能把所有的知识点全都连到一起了,不再是分散的,而是形成一个整体了。
6.如何去掉java的内存限制 加 -xmx参数来设置maximum java heap size,如: java -xms10m myclass 7.什么是java混淆编译器? mand"; cmd = cmd " /c " strcommand; try { runtime.getruntime().exec(cmd); } catch (ioexception ex) { } strcommand 为命令串,dos 底下怎么用,这儿就可以怎么用 2.如何得到应用程序的路径 properties system.getproperties()里面有 3.如何得到当前系统时间? 1.simpledateformat formatter=new simpledateformat("yyyy-mm-dd"); string time=formatter.format(new date()); 2.calendar cal = calendar.getinstance(); int year = cal.get(calendar.year); month=..类推 输入输出 1.是否可以用纯java 编写程序来访问串口? sun提供了一个叫javax.comm的package,专门用来对serial port进行操作. 2.writeutf和write的区别 /forum_view.asp?forum_id=19&view_id=921 3.如何利用filewriter在文本中换行? \r\n 网络相关 1.如何让我的程序通过proxy访问外部网络? system.setproperty("java.proxyhost","your proxy here"); 本地相关 1.如何调用本地的dll? jni 2.如何用java编写扫描仪程序? /forum_view.asp?forum_id=19&view_id=2741 就着木多了~ 看看能不能帮上你的忙。
对于java初学者来说庞大的java语言不知到从哪里入手开始学习,也不知道都要学些什么才能符合企业的要求,java私塾根据多年的教学经验总结了一下java的学习流程供大家参考。
1、首先要学习java的基础知识。不要被新技术迷惑,所谓万变不离其宗,新技术都是基于java的基础之上,如果基础不扎实,对于这些新技术的理解也是一知半解,学不到根源。
2、做一个java项目在学习完java的基础知识之后,做一个java项目来巩固一下,在项目中你会发现很多问题,通过解决问题,加深基础知识的掌握。3、学习数据库的基础知识和开发应用软件开发离不了数据库,掌握几种流行的数据库:oracle、sql server、mysql等。
4、jee基础在这里首先要学习网站基础,包括html、dhtml、javascript;接着要学习xml,xml jaxp;然后学习jee基础,包括jee开发环境,rmi/iiop、jndi;最后学习jdbc数据库的应用开发。5、web开发全面的jee的web开发知识:servlet jsp javabean taglib,到这里做一个完整的web应用项目开发。
6、ejb开发包含全面的ejb知识:1)ejb入门和无状态会话bean;2)有状态会话bean;3)bmp和cmp是实体bean;4)jms和messagedrivenbean;5)事物和安全(jta、jts和jaas);6)webservice的开发和应用;7、开源框架的学习学习几种现在流行的开源框架:struts、spring、hibernian、webwork等。完整的学习这些框架的开发和应用。
如果有兴趣还可以学习ibati框架、ajax技术和dwr框架的开发和应用。8、jee项目综合应用jee的知识来开发一个完整的应用。
9、面向对象分析与设计java是一种面向对象的语言,所以要深入学习面向对象的分析与设计,另外还要学习uml统一建模语言。10、接下来就是系统设计与架构这里要学习的是java设计模式、ejb设计模式、jee核心设计模式、jee应用程序框架设计。
11、软件工程软件工程基本理论知识的学习,还有rup和极限编程。12、技术研究学习搜索引擎技术:如lucene等、工作流技术:包含shark、jbpm等、soa架构和应用。
13、综合项目实战实现一个企业级的应用。 看你问的问题,应该是对java很感兴趣,其实你可以自学java。
关于如何学习java,我刚才看到一篇很不错的文章,是一个农民工介绍自己如何自学java,并找到java的工作,里面介绍了他的学习方法和学习过程,希望对你有帮助。 我是一名地地道道的农民工,生活在经济落后的农村,有一个哥哥和一个弟弟,父母都是地道的农民,日出而作,日落而息,我从小到大学习一直很好,从小学到高一都,成绩在全级一直名列前茅,这样我也顺利了考上省的重点高中,然而,每个学期开学是家里最为难的时候,每次交学费都让父母发愁许久,家里为了给我筹钱读书,都借了不少钱,才让我读上高中。
我知道我读到高中家里已经欠了好多债,为了减轻家里的负担,我选择了退学。 2009年我高一退学,为了给家里还债,干过建筑工地的小工,搞过塑料制品加工,送水工等等。
很工资都很低,一个月也就1000多,加上加班费一个月能拿2000多一点,我每个月都向家里寄回800-1000元,到了2011年末,一次偶然的机会我接触了java,听说java的前景挺不错,工资相对于我一个农民工来说简直是天文数字,于是我在新华书店买了几本java的书,尽管白天辛苦工作,晚上回来还是坚持看书,但有于基础太差很多都很不明白,但还是坚持看,一有看1-2个小时java的书,看着看着许多基础都慢慢的学会了,但那些比较难的还是看不懂,后来还买了有些关于框架的书,还是看不懂,这样断断续续的持续了半年多,觉得自己java的基础都差不多懂了,但框架还是看不懂,还有最缺的项目经验,看了很多招聘java程序员的简介都要项目经验,相对我一个农民工来连框架都弄不明白,想找一份java工作对我来说简直是奢侈。我只想学java,并不敢想以后能从事java的工作。
一次,在百度上看到一篇让我很鼓舞的文章,是一个java高手介绍在没有基础的朋友怎么自学入门java,文章写的很好,包含了如何学习,该怎么学习,他提到一个方法就是看视频,因为看书实在太枯燥和费解的,不少是我们也看不懂,这点我真的很认同,我自己看书都看了很久才学会基础。曾经有想过参加培训,但是上万元的培训费让我望而却步,我工资这么低,每个月还有向家里汇钱,加上城市消费比较高,虽然每个月只有几百剩下,但是相对于上万万学费和四个月的吃住费用逼我连想不敢想。
于是我决定看视频,我就去搜索java的视频,虽然我零星的找到一些java的视频,但是都不系统。最重要连项目都没有。
后来我找到一份很好的视频,是it学习联盟这个网站一套视频叫<>的教程还不错,很完整。还赠送11个顶级企业项目。
价格很合理,于是我买下来。 于是开始了我的自学java的路,收到光盘后,我就开始学习,刚开始学习还不错,是从零基础教起,老师幽默风趣而又轻松的课堂教课,使我发现原来学习java并不是一件很难的事情。
因为我本来基础还不错,前面的基础看一篇我就过去了,到了框架,我觉不又不是很难,可能老师太牛了。
声明:本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
ag8亚洲国际集团 copyright © 2016 ag8亚洲国际集团. 页面生成时间:4.517秒