仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1094|回复: 19
打印 上一主题 下一主题

[学习教程] 来看对照C++和Java

[复制链接]
小妖女 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:34:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
前些天,在CSDN上看到了一个消息,说是net网页编程网页编程AJAX成功在Linux上运行,这一点对我触动很大,而且引发了我许多感叹,所以想写出来分享一下。
“作为一位C++程序员,我们早已把握了面向对象程序计划的基础观点,并且Java的语法无疑长短常熟习的。现实上,Java原本就是从C++衍生出来的。”
但是,C++和Java之间仍存在一些明显的差别。能够如许说,这些差别代表着手艺的极猛进步。一旦我们弄分明了这些差别,就会了解为何说Java是一种优异的程序计划言语。本附录将引诱人人熟悉用于辨别Java和C++的一些主要特性。
(1)最年夜的停滞在于速率:注释过的Java要比C的实行速率慢上约20倍。不管甚么都不克不及制止Java言语举行编译。写作本书的时分,方才呈现了一些准及时编译器,它们能明显加速速率。固然,我们完整有来由以为会呈现合用于更多盛行平台的纯固有编译器,但倘使没有那些编译器,因为速率的限定,必需有些成绩是Java不克不及办理的。
(2)和C++一样,Java也供应了两品种型的正文。
(3)一切工具都必需置进一个类。不存在全局函数大概全局数据。假如想取得与全局函数等价的功效,可思索将static办法和static数据置进一个类里。注重没有象布局、列举大概团结这一类的工具,统统只要“类”(Class)!
(4)一切办法都是在类的主体界说的。以是用C++的目光看,仿佛一切函数都已嵌进,但真相并不是怎样(嵌进的成绩在前面报告)。
(5)在Java中,类界说接纳几近和C++一样的情势。但没有标记停止的分号。没有classfoo这类情势的类声明,只要类界说。
classaType()
voidaMethod(){/*办法主体*/}
}
(6)Java中没有感化域局限运算符“::”。Java使用点号做一切的事变,但能够不必思索它,由于只能在一个类里界说元素。即便那些办法界说,也必需在一个类的外部,以是基本没有需要指定感化域的局限。我们注重到的一项差别是对static办法的挪用:利用ClassName.methodName()。除此之外,package(包)的名字是用点号创建的,并能用import关头字完成C++的“#include”的一部分功效。比方上面这个语句:
importjava.awt.*;
(#include其实不间接映照成import,但在利用时有相似的感到。)
(7)与C++相似,Java含有一系列“主范例”(Primitivetype),以完成更无效率的会见。在Java中,这些范例包含boolean,char,byte,short,int,long,float和double。一切主范例的巨细都是固有的,且与详细的呆板有关(思索到移植的成绩)。这一定会对功能形成必定的影响,详细取决于分歧的呆板。对范例的反省和请求在Java里变得更刻薄。比方:
■前提表达式只能是boolean(布尔)范例,不成利用整数。
■必需利用象X+Y如许的一个表达式的了局;不克不及仅仅用“X+Y”来完成“反作用”。
(8)char(字符)范例利用国际通用的16位Unicode字符集,以是能主动表达年夜多半国度的字符。
(9)静态援用的字串会主动转换成String对象。和C及C++分歧,没有自力的静态字符数组字串可供利用。
(10)Java增加了三个右移位运算符“>>>”,具有与“逻辑”右移位运算符相似的服从,可在最开端拔出零值。“>>”则会在移位的同时拔出标记位(即“算术”移位)。
(11)只管外表上相似,但与C++比拟,Java数组接纳的是一个很是分歧的布局,并具有共同的举动。有一个只读的length成员,经由过程它可晓得数组有多年夜。并且一旦凌驾数组界限,运转期反省会主动抛弃一个非常。一切数组都是在内存“堆”里创立的,我们可将一个数组分派给另外一个(只是复杂地复制数组句柄)。数组标识符属于第一级对象,它的一切办法一般都合用于其他一切对象。
(12)关于一切不属于主范例的对象,都只能经由过程new命令创立。和C++分歧,Java没有响应的命令能够“在仓库上”创立不属于主范例的对象。一切主范例都只能在仓库上创立,同时不利用new命令。一切次要的类都有本人的“封装(器)”类,以是可以经由过程new创立等价的、之内存“堆”为基本的对象(主范例数组是一个破例:它们可象C++那样经由过程汇合初始化举行分派,大概利用new)。
(13)Java中不用举行提早声明。若想在界说前利用一个类或办法,只需间接利用它便可——编译器会包管利用得当的界说。以是和在C++中分歧,我们不会碰着任何触及提早援用的成绩。
(14)Java没有预处置机。若想利用另外一个库里的类,只需利用import命令,并指定库名便可。不存在相似于预处置机的宏。
(15)Java用包取代了定名空间。因为将一切工具都置进一个类,并且因为接纳了一种名为“封装”的机制,它能针对类名举行相似于定名空间分化的操纵,以是定名的成绩不再进进我们的思索之列。数据包也会在独自一个库名下搜集库的组件。我们只需复杂地“import”(导进)一个包,剩下的事情会由编译器主动完成。
(16)被界说成类成员的对象句柄会主动初始化成null。对基础类数据成员的初始化在Java里失掉了牢靠的保证。若不明白地举行初始化,它们就会失掉一个默许值(零或等价的值)。可对它们举行明白的初始化(显式初始化):要末在类内界说它们,要末在构建器中界说。接纳的语法比C++的语法更简单了解,并且关于static和非static成员来讲都是流动稳定的。我们不用从内部界说static成员的存储体例,这和C++是分歧的。
(17)在Java里,没有象C和C++那样的指针。用new创立一个对象的时分,会取得一个援用(本书一向将其称作“句柄”)。比方:
Strings=newString("howdy");
但是,C++援用在创立时必需举行初始化,并且不成重界说到一个分歧的地位。但Java援用其实不必定范围于创立时的地位。它们可依据情形恣意界说,这便打消了对指针的部分需求。在C和C++里大批接纳指针的另外一个缘故原由是为了能指向恣意一个内存地位(这同时会使它们变得不平安,也是Java不供应这一撑持的缘故原由)。指针一般被看做在基础变量数组中到处挪动的一种无效手腕。Java同意我们以更平安的情势到达不异的方针。办理指针成绩的最终办法是“固无方法”(已在附录A会商)。将指针传送给办法时,一般不会带来太年夜的成绩,由于此时没有全局函数,只要类。并且我们可传送对对象的援用。Java言语最入手下手宣称本人“完整不接纳指针!”但跟着很多程序员都诘责没有指针怎样事情?因而厥后又声明“接纳遭到限定的指针”。人人可自行判别它是不是“真”的是一个指针。但不论在何种情形下,都不存在指针“算术”。
(18)Java供应了与C++相似的“构建器”(Constructor)。假如不本人界说一个,就会取得一个默许构建器。而假如界说了一个非默许的构建器,就不会为我们主动界说默许构建器。这和C++是一样的。注重没有复制构建器,由于一切自变量都是按援用传送的。
(19)Java中没有“损坏器”(Destructor)。变量不存在“感化域”的成绩。一个对象的“存在工夫”是由对象的存在工夫决意的,并不是由渣滓搜集器决意。有个finalize()办法是每个类的成员,它在某种水平上相似于C++的“损坏器”。但finalize()是由渣滓搜集器挪用的,并且只卖力开释“资本”(如翻开的文件、套接字、端口、URL等等)。如需在一个特定的地址做某样事变,必需创立一个特别的办法,并挪用它,不克不及依附finalize()。而在另外一方面,C++中的一切对象城市(大概说“应当”)损坏,但并不是Java中的一切对象城市被看成“渣滓”搜集失落。因为Java不撑持损坏器的观点,以是在需要的时分,必需审慎地创立一个扫除办法。并且针对类内的基本类和成员对象,必要明白挪用一切扫除办法。
(20)Java具无方法“过载”机制,它的事情道理与C++函数的过载几近是完整不异的。
(21)Java不撑持默许自变量。
(22)Java中没有goto。它接纳的无前提跳起色制是“break标签”大概“continue尺度”,用于跳出以后的多重嵌套轮回。
(23)Java接纳了一种单根式的分级布局,因而一切对象都是从根类Object一致承继的。而在C++中,我们可在任何中央启动一个新的承继树,以是最初常常看到包括了大批树的“一片丛林”。在Java中,我们不管怎样都只要一个分级布局。只管这外表上看仿佛形成了限定,但因为我们晓得每一个对象一定最少有一个Object接口,以是常常能取得更壮大的才能。C++今朝仿佛是独一没有强迫单根布局的独一一种OO言语。
(24)Java没有模板大概参数化范例的其他情势。它供应了一系列汇合:Vector(向量),Stack(仓库)和Hashtable(散列表),用于包容Object援用。使用这些汇合,我们的一系列请求可失掉满意。但这些汇合并不是是为完成象C++“尺度模板库”(STL)那样的疾速挪用而计划的。Java1.2中的新汇合显得加倍完全,但仍不具有正宗模板那样的高效力利用手腕。
(25)“渣滓搜集”意味着在Java中呈现内存毛病的情形会少很多,但也并不是完整不成能(若挪用一个用于分派存储空间的固无方法,渣滓搜集器就不克不及对其举行跟踪监督)。但是,内存毛病和资本毛病多是因为编写不妥的finalize()酿成的,或是因为在已分派的一个块尾开释一种资本酿成的(“损坏器”在此时显得出格便利)。渣滓搜集器是在C++基本上的一种极猛进步,使很多编程成绩消弥于有形当中。但对多数几个渣滓搜集器力有不逮的成绩,它倒是不年夜合适的。但渣滓搜集器的大批长处也使这一处弱点显得微乎其微。
(26)Java内建了对多线程的撑持。使用一个特别的Thread类,我们可经由过程承继创立一个新线程(保持了run()办法)。若将synchronized(同步)关头字作为办法的一个范例限定符利用,互相排挤征象会在对象这一级产生。在任何给定的工夫,只要一个线程能利用一个对象的synchronized办法。在另外一方面,一个synchronized办法进进今后,它起首会“锁定”对象,避免其他任何synchronized办法再利用谁人对象。只要加入了这个办法,才会将对象“解锁”。在线程之间,我们仍旧要卖力完成更庞大的同步机制,办法是创立本人的“监督器”类。递回的synchronized办法能够一般运作。若线程的优先品级不异,则工夫的“分片”不克不及失掉包管。
(27)我们不是象C++那样把持声明朝码块,而是将会见限制符(public,private和protected)置进每一个类成员的界说里。若未划定一个“显式”(明白的)限制符,就会默许为“友爱的”(friendly)。这意味着统一个包里的其他元素也能够会见它(相称于它们都成为C++的“friends”——伴侣),但不成由包外的任何元素会见。类——和类内的每一个办法——都有一个会见限制符,决意它是不是能在文件的内部“可见”。private关头字一般很少在Java中利用,由于与排挤统一个包内其他类的会见比拟,“友爱的”会见一般加倍有效。但是,在多线程的情况中,对private的得当使用长短常主要的。Java的protected关头字意味着“可由承继者会见,亦可由包内其他元素会见”。注重Java没有与C++的protected关头字等价的元素,后者意味着“只能由承继者会见”(之前可用“privateprotected”完成这个目标,但这一对关头字的组合已被作废了)。
(28)嵌套的类。在C++中,对类举行嵌套有助于埋没称号,并便于代码的构造(但C++的“定名空间”已使称号的埋没显很多余)。Java的“封装”或“打包”观点等价于C++的定名空间,以是不再是一个成绩。Java1.1引进了“外部类”的观点,它奥密坚持指向内部类的一个句柄——创立外部类对象的时分必要用到。这意味着外部类对象大概能会见内部类对象的成员,毋需任何前提——就好象那些成员间接从属于外部类对象一样。如许便为回调成绩供应了一个更优异的计划——C++是用指向成员的指针办理的。
(29)因为存在后面先容的那种外部类,以是Java里没有指向成员的指针。
(30)Java不存在“嵌进”(inline)办法。Java编译器大概会自行决意嵌进一个办法,但我们对此没有更多的把持权利。在Java中,可为一个办法利用final关头字,从而“倡议”举行嵌进操纵。但是,嵌进函数关于C++的编译器来讲也只是一种倡议。
(31)Java中的承继具有与C++不异的效果,但接纳的语法分歧。Java用extends关头字标记从一个基本类的承继,并用super关头字指出筹办在基本类中挪用的办法,它与我们以后地点的办法具有不异的名字(但是,Java中的super关头字只同意我们会见父类的办法——亦即分级布局的上一级)。经由过程在C++中设定基本类的感化域,我们可会见位于分级布局较深处的办法。亦可用super关头字挪用基本类构建器。正如新近指出的那样,一切类终极城市从Object里主动承继。和C++分歧,不存在明白的构建器初始化列表。但编译器会强制我们在构建器主体的开首举行全体的基本类初始化,并且不同意我们在主体的前面部分举行这一事情。经由过程组合使用主动初始化和来自未初始化对象句柄的非常,成员的初始化可失掉无效的包管。

publicclassFooextendsBar{
publicFoo(Stringmsg){
super(msg);//Callsbaseconstructor
}
publicbaz(inti){//Override
super.baz(i);//Callsbasemethod
}
}

(32)Java中的承继不会改动基本类成员的回护级别。我们不克不及在Java中指定public,private大概protected承继,这一点与C++是不异的。别的,在衍生类中的优先办法不克不及削减对基本类办法的会见。比方,假定一个成员在基本类中属于public,而我们用另外一个办法取代了它,那末用于交换的办法也必需属于public(编译器会主动反省)。
(33)Java供应了一个interface关头字,它的感化是创立笼统基本类的一个等价物。在个中添补笼统办法,且没无数据成员。如许一来,关于仅仅计划成一个接口的工具,和关于用extends关头字在现有功效基本上的扩大,二者之间便发生了一个分明的差别。不值得用abstract关头字发生一品种似的效果,由于我们不克不及创立属于谁人类的一个对象。一个abstract(笼统)类可包括笼统办法(只管其实不请求在它内里包括甚么工具),但它也能包括用于详细完成的代码。因而,它被限定成一个单一的承继。经由过程与接口团结利用,这一计划制止了对相似于C++假造基本类那样的一些机制的必要。
为创立可举行“例示”(即创立一个实例)的一个interface(接口)的版本,需利用implements关头字。它的语法相似于承继的语法,以下所示:
publicinterfaceFace{
publicvoidsmile();
}
publicclassBazextendsBarimplementsFace{
publicvoidsmile(){
System.out.println("awarmsmile");
}
}

(34)Java中没有virtual关头字,由于一切非static办法都一定会用到静态绑定。在Java中,程序员不用自行决意是不是利用静态绑定。C++之以是接纳了virtual,是因为我们对功能举行调剂的时分,可经由过程将其省略,从而取得实行效力的大批提拔(大概换句话说:“假如不必,就没需要为它支付价值”)。virtual常常会形成必定水平的搅浑,并且取得使人不快的了局。final关头字为功能的调剂划定了一些局限——它向编译器指出这类办法不克不及被代替,以是它的局限大概被静态束缚(并且成为嵌进形态,以是利用C++非virtual挪用的等价体例)。这些优化事情是由编译器完成的。
(35)Java不供应多重承继机制(MI),最少不象C++那样做。与protected相似,MI外表上是一个很不错的主张,但只要真正面临一个特定的计划成绩时,才晓得本人必要它。因为Java利用的是“单根”分级布局,以是只要在少少的场所才必要用到MI。interface关头字会匡助我们主动完成多个接口的兼并事情。
(36)运转期的范例标识功效与C++极其类似。比方,为取得与句柄X有关的信息,可以使用下述代码:
X.getClass().getName();
为举行一个“范例平安”的压缩外型,可以使用:
derivedd=(derived)base;
这与新式作风的C外型是一样的。编译器会主动挪用静态外型机制,不请求利用分外的语法。只管它其实不象C++的“newcasts”那样具有易于定位外型的长处,但Java会反省利用情形,并抛弃那些“非常”,以是它不会象C++那样同意坏外型的存在。
(37)Java接纳了分歧的非常把持机制,由于此时已不存在构建器。可增加一个finally从句,强迫实行特定的语句,以便举行需要的扫除事情。Java中的一切非常都是从基本类Throwable里承继而来的,以是可确保我们失掉的是一个通用接口。
publicvoidf(Objb)throwsIOException{
myresourcemr=b.createResource();
try{
mr.UseResource();
}catch(MyExceptione){
//handlemyexception
}catch(Throwablee){
//handleallotherexceptions
}finally{
mr.dispose();//specialcleanup
}
}

(38)Java的非常标准比C++的杰出很多。抛弃一个毛病的非常后,不是象C++那样在运转时代挪用一个函数,Java非常标准是在编译时代反省并实行的。除此之外,被代替的办法必需恪守那一办法的基本类版本的非常标准:它们可抛弃指定的非常大概从那些非常衍生出来的其他非常。如许一来,我们终极失掉的是更加“强健”的非常把持代码。
(39)Java具无方法过载的才能,但不同意运算符过载。String类不克不及用+和+=运算符毗连分歧的字串,并且String表达式利用主动的范例转换,但那是一种特别的内建情形。
(40)经由过程事前的商定,C++中常常呈现的const成绩在Java里已失掉了把持。我们只能传送指向对象的句柄,当地正本永久不会为我们主动天生。若但愿利用相似C++按值传送那样的手艺,可挪用clone(),天生自变量的一个当地正本(只管clone()的计划仍然尚显粗拙——拜见第12章)。基本不存在被主动挪用的正本构建器。为创立一个编译期的常数值,可象上面如许编码:
staticfinalintSIZE=255
staticfinalintBSIZE=8*SIZE
(41)因为平安方面的缘故原由,“使用程序”的编程与“程序片”的编程之间存在着明显的差别。一个最分明的成绩是程序片不同意我们举行磁盘的写操纵,由于如许做会形成从远程站点下载的、不明来源的程序大概胡乱改写我们的磁盘。跟着Java1.1对数字署名手艺的援用,这一情形已有所变动。依据数字署名,我们可切实晓得一个程序片的全体作者,并考证他们是不是已取得受权。Java1.2会进一步加强程序片的才能。
(42)因为Java在某些场所大概显得限定太多,以是偶然不肯用它实行象间接会见硬件如许的主要义务。Java办理这个成绩的计划是“固无方法”,同意我们挪用由其他言语写成的函数(今朝只撑持C和C++)。如许一来,我们就一定可以办理与平台有关的成绩(接纳一种不成移植的情势,但那些代码随后会被断绝起来)。程序片不克不及挪用固无方法,只要使用程序才能够。
(43)Java供应对正文文档的内建撑持,以是源码文件也能够包括它们本人的文档。经由过程一个独自的程序,这些文档信息能够提掏出来,偏重新格局化成HTML。这无疑是文档办理及使用的极猛进步。
(44)Java包括了一些尺度库,用于完成特定的义务。C++则依托一些非尺度的、由其他厂商供应的库。这些义务包含(或不久就要包含):
■连网
■数据库毗连(经由过程JDBC)
■多线程
■散布式对象(经由过程RMI和CORBA)
■紧缩
■商贸
因为这些库复杂易用,并且十分尺度,以是能极年夜加速使用程序的开辟速率。
(45)Java1.1包括了JavaBeans尺度,后者可创立在可视编程情况中利用的组件。因为恪守一样的尺度,以是可视组件可以在一切厂商的开辟情况中利用。因为我们其实不依附一家厂商的计划举行可视组件的计划,以是组件的选择余地会加年夜,并可进步组件的效能。除此以外,JavaBeans的计划十分复杂,便于程序员了解;而那些由分歧的厂商开辟的公用组件框架则请求举行更深切的进修。
(46)若会见Java句柄失利,就会抛弃一次非常。这类抛弃测试其实不必定要恰好在利用一个句柄之行进行。依据Java的计划标准,只是说非常必需以某种情势抛弃。很多C++运转期体系也能抛弃那些因为指针毛病酿成的非常。
(47)Java一般显得更加强健,为此接纳的手腕以下:
■对象句柄初始化成null(一个关头字)
■句柄一定会失掉反省,并在堕落时抛弃非常
■一切数组会见城市失掉反省,实时发明界限背例情形
■主动渣滓搜集,避免呈现内存毛病
■明白、“傻瓜式”的非常把持机制
■为多线程供应了复杂的言语撑持
■对收集程序片举行字节码校验

专门做了这个例子;而java的这个例子好像就是为了教学而写的,很多教学目的的例子是不考虑优化、性能的。
愤怒的大鸟 该用户已被删除
沙发
发表于 2015-1-21 10:26:00 | 只看该作者
是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能
精灵巫婆 该用户已被删除
板凳
发表于 2015-1-25 06:43:30 | 只看该作者
其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。
深爱那片海 该用户已被删除
地板
发表于 2015-2-1 09:59:33 | 只看该作者
关于设计模式的资料,还是向大家推荐banq的网站 [url]http://www.jdon.com/[/url],他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。
小女巫 该用户已被删除
5#
发表于 2015-2-2 16:52:34 | 只看该作者
其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。
兰色精灵 该用户已被删除
6#
发表于 2015-2-8 01:44:00 | 只看该作者
是一种为 Internet发展的计算机语言
admin 该用户已被删除
7#
发表于 2015-2-23 23:12:37 | 只看该作者
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
再现理想 该用户已被删除
8#
发表于 2015-3-1 19:10:20 | 只看该作者
是一种使网页(Web Page)产生生动活泼画面的语言
乐观 该用户已被删除
9#
发表于 2015-3-2 18:34:08 | 只看该作者
Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
10#
发表于 2015-3-11 05:20:32 | 只看该作者
是一种将安全性(Security)列为第一优先考虑的语言
只想知道 该用户已被删除
11#
发表于 2015-3-12 00:19:38 | 只看该作者
我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。
变相怪杰 该用户已被删除
12#
发表于 2015-3-19 16:54:35 | 只看该作者
象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。
再见西城 该用户已被删除
13#
发表于 2015-3-21 09:38:13 | 只看该作者
当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢?
金色的骷髅 该用户已被删除
14#
发表于 2015-3-27 06:10:56 | 只看该作者
J2SE开发桌面应用软件比起 VC,VB,DEPHI这些传统开发语言来说,优势好象并不明显。J2ME对于初学者来说,好象又有点深奥,而且一般开发者很难有开发环境。
谁可相欹 该用户已被删除
15#
发表于 2015-3-28 18:34:04 | 只看该作者
Java是一种计算机编程语言,拥有跨平台、面向对java
冷月葬花魂 该用户已被删除
16#
发表于 2015-5-4 06:45:34 | 只看该作者
应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展
老尸 该用户已被删除
17#
发表于 2015-5-9 05:11:07 | 只看该作者
设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧
透明 该用户已被删除
18#
发表于 2015-6-9 11:25:07 | 只看该作者
是一种由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的语言
若天明 该用户已被删除
19#
发表于 2015-6-11 20:28:51 | 只看该作者
如果你学过HTML,那么事情要好办的多,如果没有,那你快去补一补HTML基础吧。其实JSP中的Java语法也不多,它更象一个脚本语言,有点象ASP。
爱飞 该用户已被删除
20#
发表于 2015-6-14 21:51:09 | 只看该作者
有时间再研究一下MVC结构(把Model-View-Control分离开的设计思想)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-8 11:42

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表