了解下JAVA的初始化基本类
在性能方面,在windows平台下,.net网页编程可能是占强项,要是把.net网页编程放在sun开发的操作系统上去运行呢?根本就运行不了,.net网页编程对其它操作系统的支持也很弱,性能也可能比不上java。因为这儿触及到两个类——基本类及衍生类,而不再是之前的一个,以是在设想衍生类的了局对象时,大概会发生一些利诱。从内部看,仿佛新类具有与基本类不异的接口,并且可包括一些分外的办法和字段。但承继并不是仅仅复杂地复制基本类的接口了事。创立衍生类的一个对象时,它在个中包括了基本类的一个“子对象”。这个子对象就象我们依据基本类自己创立了它的一个对象。从内部看,基本类的子对象已封装到衍生类的对象里了。
固然,基本类子对象应当准确地初始化,并且只要一种办法能包管这一点:在构建器中实行初始化,经由过程挪用基本类构建器,后者有充足的才能和权限来实行对基本类的初始化。在衍生类的构建器中,Java会主动拔出对基本类构建器的挪用。上面这个例子向人人展现了对这类三级承继的使用:
//:Cartoon.java
//Constructorcallsduringinheritance
classArt{
Art(){
System.out.println("Artconstructor");
}
}
classDrawingextendsArt{
Drawing(){
System.out.println("Drawingconstructor");
}
}
publicclassCartoonextendsDrawing{
Cartoon(){
System.out.println("Cartoonconstructor");
}
publicstaticvoidmain(String[]args){
Cartoonx=newCartoon();
}
}///:~该程序的输入显现了主动挪用:
Artconstructor
Drawingconstructor
Cartoonconstructor
能够看出,构建是在基本类的“内部”举行的,以是基本类会在衍生类会见它之前失掉准确的初始化。
即便没无为Cartoon()创立一个构建器,编译器也会为我们主动分解一个默许构建器,并收回对基本类构建器的挪用。
1.含有自变量的构建器
上述例子有本人默许的构建器;也就是说,它们不含任何自变量。编译器能够很简单地挪用它们,由于不存在详细传送甚么自变量的成绩。假如类没有默许的自变量,大概想挪用含有一个自变量的某个基本类构建器,必需明白地编写对基本类的挪用代码。这是用super关头字和得当的自变量列表完成的,以下所示:
//:Chess.java
//Inheritance,constructorsandarguments
classGame{
Game(inti){
System.out.println("Gameconstructor");
}
}
classBoardGameextendsGame{
BoardGame(inti){
super(i);
System.out.println("BoardGameconstructor");
}
}
publicclassChessextendsBoardGame{
Chess(){
super(11);
System.out.println("Chessconstructor");
}
publicstaticvoidmain(String[]args){
Chessx=newChess();
}
}///:~假如不挪用BoardGames()内的基本类构建器,编译器就会呈报本人找不到Games()情势的一个构建器。除此之外,在衍生类构建器中,对基本类构建器的挪用是必需做的第一件事变(如操纵恰当,编译器会向我们指出)。
2.捕捉基础构建器的背例
正如方才指出的那样,编译器会强制我们在衍生类构建器的主体中起首设置对基本类构建器的挪用。这意味着在它之前不克不及呈现任何工具。正如人人在第9章会看到的那样,这同时也会避免衍生类构建器捕捉来自一个基本类的任何背例事务。明显,这偶然会为我们形成方便。
你希望java的IDE整合。这个是没有必要的,重要的是你理解java有多深以及怎么组织你的代码,即使没有IDE,代码照样能够编译运行的。 是一种语言,用以产生「小应用程序(Applet(s)) 接着就是EJB了,EJB就是Enterprise JavaBean, 看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的 Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工作都在设计和配置中间件上。 不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。 Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。 Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台 自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。 不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。 Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。 至于JDBC,就不用我多说了,你如果用java编过存取数据库的程序,就应该很熟悉。还有,如果你要用Java编发送电子邮件的程序,你就得看看Javamail 了。 那么我书也看了,程序也做了,别人问我的问题我都能解决了,是不是就成为高手了呢?当然没那么简单,这只是万里长征走完了第一步。不信?那你出去接一个项目,你知道怎么下手吗,你知道怎么设计吗,你知道怎么组织人员进行开发吗?你现在脑子里除了一些散乱的代码之外,可能再没有别的东西了吧! 你可以去承接一些项目做了,一开始可能有些困难,可是你有技术积累,又考虑周全,接下项目来可以迅速作完,相信大家以后都会来找你的,所以Money就哗啦啦的。。。。。。 是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能 我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。 让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。 是一种使网页(Web Page)产生生动活泼画面的语言 J2SE开发桌面应用软件比起 VC,VB,DEPHI这些传统开发语言来说,优势好象并不明显。J2ME对于初学者来说,好象又有点深奥,而且一般开发者很难有开发环境。 多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。 Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。 Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
页:
[1]