仓酷云

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

[学习教程] 来看java的承继初始化

[复制链接]
乐观 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:36:39 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式

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

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

x
java主要分三块,j2se:java的基础核心语言。j2me:java的微型模块,专门针对内存小,没有持续电源等小型设备。j2ee:java的企业模块,专门针对企业数据库服务器的连接维护。
我们有需要对全部初始化历程有所熟悉,个中包含承继,对这个过程当中产生的事变有一个全体性的观点。请察看下述代码:
  1. //:Beetle.java
  2. //Thefullprocessofinitialization.
  3. classInsect{
  4. inti=9;
  5. intj;
  6. Insect(){
  7. prt("i="+i+",j="+j);
  8. j=39;
  9. }
  10. staticintx1=
  11. prt("staticInsect.x1initialized");
  12. staticintprt(Strings){
  13. System.out.println(s);
  14. return47;
  15. }
  16. }
  17. publicclassBeetleextendsInsect{
  18. intk=prt("Beetle.kinitialized");
  19. Beetle(){
  20. prt("k="+k);
  21. prt("j="+j);
  22. }
  23. staticintx2=
  24. prt("staticBeetle.x2initialized");
  25. staticintprt(Strings){
  26. System.out.println(s);
  27. return63;
  28. }
  29. publicstaticvoidmain(String[]args){
  30. prt("Beetleconstructor");
  31. Beetleb=newBeetle();
  32. }
  33. }///:~
复制代码
该程序的输入以下:
  1. staticInsect.xinitialized
  2. staticBeetle.xinitialized
  3. Beetleconstructor
  4. i=9,j=0
  5. Beetle.kinitialized
  6. k=63
  7. j=39
复制代码
对Beetle运转Java时,产生的第一件事变是装载程序到表面找到谁人类。在装载过程当中,装载程序注重它有一个基本类(即extends关头字要表达的意义),以是随之将其载进。不管是不是筹办天生谁人基本类的一个对象,这个历程城市产生(请试着将对象的创立代码看成正文标注出来,本人往证明)。
若基本类含有另外一个基本类,则另外一个基本类随即也会载进,以此类推。接上去,会在基本础类(此时是Insect)实行static初始化,再鄙人一个衍生类实行,以此类推。包管这个按次长短常关头的,由于衍生类的初始化大概要依附于对基本类成员的准确初始化。
此时,需要的类已全体装载终了,以是可以创立对象。起首,这个对象中的一切基础数据范例城市设成它们的默许值,而将对象句柄设为null。随后会挪用基本类构建器。在这类情形下,挪用是主动举行的。但也完整能够用super来自行指定构建器挪用(就象在Beetle()构建器中的第一个操纵一样)。基本类的构建接纳与衍生类构建器完整不异的处置历程。基本顺构建器完成今后,实例变量会按原本的按次得以初始化。最初,实行构建器残剩的主体部分。
j2EE和asp比较,其实也没什么比的,原因和我上面说那些比较差不了多少,也是稳定性,安全性,J2EE比asp高,速度上比不过asp,asp也是延续着它的拖拽控件的方法,提高速度。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-5-7 01:41

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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