JAVA编程:Effective Java -->(一)创立和...
其实你不用Struts,spring这些工具,直接用jsp,servlet能够很方便地写出来,而且,可以根据个人的水平、爱好,有很多方案。而struts,spring这些工具的出来。创立|对象EffectiveJava进修条记JAVA言语撑持四种基础范例:接口(Interface)、类(Class)、数组(Array)、和原语范例(Primitive)。前三品种型一般被称为援用范例(referencetype),类的实例和数组是对象(object),而原语范例的值不是对象。一个类的成员(member)包含它的域(field),办法(method),成员类(memberclass)和成员接口(memberinterface)。一个办法的原型(signature)包含它的名字和一切形参的范例,办法原型不包含它的前往范例。
第一条:思索用静态工场办法取代机关函数关于一个类,为了失掉一个实例,最一般的办法是供应私有的机关函数NEW一个。别的一种办法是能够经由过程供应一个静态工场办法(staticfactorymethod),它前往的是类的一个实例。上面是Singleton形式中的静态办法,前往类的独一实例。publicstaticAgetInstance(){returnINSTANCE;}
静态工场办法的优点:(1)静态办法具着名字。假如一个机关函数的参数并没有切实地形貌被前往的对象,那末选用得当名字的静态工场可使一个类更容易于利用,而且响应的客户代码更容易于浏览。(2)静态办法在每次挪用的时分,不请求非得创立一个新的对象。静态工场办法能够为反复的挪用前往统一个对象。(比方Singleton形式)(3)静态办法能够前往一个原前往范例的子范例的对象。(这一点常常被用在基于接口的框架布局中,及笼统工场形式,在Java的CollectionsFramework中有一个java.util.Collections类,内里就有良多有效的静态办法,它是经由过程前往接口来援用一个被埋没起来的完成类的实例)。
静态工场办法的次要弱点:(1)类假如不含私有的大概受回护的机关函数,就不克不及被子类化。(勉励利用复合布局而不是承继)(2)与别的的静态办法没有任何区分。个中用作名字的通常为范例转换操纵,而名字办法前往实例。总结:静态工场办法和私有的机关函数各有各自的用处,了解各自的优点以便更公道的计划类的布局。
第四条:制止创立反复的对象作为一个极度的不和例子,思索上面的语名:Strings=newString("sample");//Dontdothis!该语句每被实行一次城市创立一个新的String实例(之前有点不太了解一句话:String对象是一个不成变字符串,而StringBuffer对象是一个可变字符串。这个不成变和可变让我不知怎样设想,当我用一个String对象作为援用传给一个办法,再在办法体中改动它的值,可是在挪用该办法后,外边的值仍然没有改动,这不切合JAVA中的援用划定规矩,才想到String对象的特别性:不成变字符串)在开辟事情中,常常会在办法体中实例化对象,在这个办法有大概被频仍挪用而且实例化的对象是不异的实例时,应当思索把这个实例化的对象放到办法体外来界说和实例化。从而制止创立反复的对象。另外一方面,因为小对象的机关函数只做很小量的事情,以是,小对象的创立和接纳举措长短常便宜的,出格是在古代的JVM完成上更是云云。经由过程创立附加的对象以使得一个程序加倍明晰、简便、功效壮大,这常常是一件功德。
还有就是总有人问我到底该学习什么语言,什么语言有前途,那么我的回答是不论是C,C++,java,.net,ruby,asp或是其他语言都可以学,编程的关键不是语言,而是思想。 是一种突破用户端机器环境和CPU 应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展 当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢? Java 编程语言的风格十分接近C、C++语言。 你一定会高兴地说,哈哈,原来成为Java高手就这么简单啊!记得Tomjava也曾碰到过一个项目经理,号称Java很简单,只要三个月就可以学会。 是一种语言,用以产生「小应用程序(Applet(s)) Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。 J2SE开发桌面应用软件比起 VC,VB,DEPHI这些传统开发语言来说,优势好象并不明显。J2ME对于初学者来说,好象又有点深奥,而且一般开发者很难有开发环境。 其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。 至于JDBC,就不用我多说了,你如果用java编过存取数据库的程序,就应该很熟悉。还有,如果你要用Java编发送电子邮件的程序,你就得看看Javamail 了。 接着就是EJB了,EJB就是Enterprise JavaBean, 看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的 Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工作都在设计和配置中间件上。 在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。 Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading) 如果要向java web方向发展也要吧看看《Java web从入门到精通》学完再到《Struts2.0入门到精通》这样你差不多就把代码给学完了。有兴趣可以看一些设计模块和框架的包等等。 Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台 让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。 还好,SUN提供了Javabean可以把你的JSP中的 Java代码封装起来,便于调用也便于重用。 Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。 多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。
页:
[1]
2