快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

JAVA 与C#构造函数执行顺序的不同之处.

JAVA: 先执行父类的构造函数,然后是引用对象的构造函数(必须有new声明实际类型),然后是自己的构造函数。
public class Test
{
public static void main(String[] args)
{
Child child = new Child();
}
}

class Parent
{
Parent()
{
System.out.println("to construct Parent.");
}
}

class Child extends Parent
{
Child()
{
System.out.println("to construct Child.");
}
Delegatee delegatee = new Delegatee();
}


class Delegatee
{
Delegatee()
{
System.out.println("to construct Delegatee.");
}
}


结果是

而C#的构造函数执行顺序是:先引用对象,在父类,再子类.to construct Parent.
to construct Delegatee.
to construct Child.

using System;

namespace ConsoleApplication1
{
public class Test
{
public static void Main(String[] args)
{
Child child = new Child();
}
}

class Parent
{
public Parent()
{
Console.WriteLine("to construct parent");
}
}

class Child : Parent
{
public Child()
{
Console.WriteLine("to construct Child.");
}
Delegatee delegatee = new Delegatee();
}
class Delegatee
{
public Delegatee()
{
Console.WriteLine("to construct Delegatee.");
}
}
}

结果是
to construct Delegatee.
to construct Child.
to construct Parent.


总结:
被依靠的先构造,依靠于人的后构造。JAVA 是跨层依靠优先于同层依
赖构造,而C#是同层依靠优先于跨层依靠.







返回类别: 教程
上一教程: 一个 Java,各自表述
下一教程: 用Eclipse 和 Lomboz插件开发基于 Weblogic 的 EJB

您可以阅读与"JAVA 与C#构造函数执行顺序的不同之处."相关的教程:
· JAVA构造函数运行解析
· Java中for循环中执行顺序问题及break, continue用法
· "package中的javac,java用法" && "制作可执行jar文件"
· 谈谈JAVA程序的反编译
· 利用Java调用可执行命令实例
    微笑服务 优质保证 索取样品