博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于构造函数
阅读量:6688 次
发布时间:2019-06-25

本文共 1805 字,大约阅读时间需要 6 分钟。

构造函数的作用是根据参数不同来创建一个不同的实例对象,现在我想介绍一下实例对象的过程,我们都知道如果没有说明继承那个类,那么一个类默认继承的是System.Object类。所以如果是一个指明了继承哪个类,那么至少它继承两个类。

现在开始介绍构造函数,构造函数是没有返回类型的啊,不知道这个大家知道不。主要还是通过代码会更清楚吧,下面开工代码

using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace ConsoleApplication1{    public class Write    {        public  Write()        {Console.WriteLine("先执行");}//这个默认的情况下是省略的,现在为了明显期间 我就添上了,下同        }    public class ReWrite:Write    {        public  ReWrite()        {Console.WriteLine("后执行"); }    }    class Program    {        static void Main(string[] args)        {            ReWrite rw = new ReWrite(i, j);            Console.ReadKey();         }    }}

这个的执行过程是System.Object方法,Write方法,ReWrite方法。无论是否有继承存在 Object是必须执行的 而且是先执行的。如果不行的话 我们可以在每个函数中添加一个Console.WriteLine("******");主要就能看出那个先执行了。

其实我想介绍的重点不是这个是下面一个。请看代码

using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace ConsoleApplication1{    public class Write    {        public Write()        { }        public Write(int i)        {            Console.WriteLine("{0}", i);        }        public Write(int i, int j)        {            Console.WriteLine("{0}和{1}", i, j);        }    }    public class ReWrite : Write    {        public ReWrite()        { }        public ReWrite(int i)        {            Console.WriteLine("{0}", i);        }        public ReWrite(int i, int j)//{replace}        {            Console.WriteLine("{0}和{1}", i, j);        }    }    class Program    {        static void Main(string[] args)        {            int i = 3, j = 4;            ReWrite rw = new ReWrite(i, j);            Console.ReadKey();        }    }}

这个执行顺序大家应该很明白了,是先执行object方法,然后执行Write()方法。最后执行ReWrite(i, j);方法。但是如果我想执行Write(i)方法怎么办呢 其实很简单

只需要把//{replace}改成base(i)或this(1)就OK了

具体base和this的用法在下一篇提到;

转载地址:http://yxhao.baihongyu.com/

你可能感兴趣的文章
培养自己的核心竞争力
查看>>
别样JAVA学习(六)继承下(2.3)异常下
查看>>
win10 配置 python3 + opencv3.2 + VideoCapture
查看>>
《JAVA与模式》之门面模式
查看>>
数据清洗小记(12):姓与名的提取
查看>>
Hadoop-1.2.1学习之Job创建和提交源码分析
查看>>
身份证验证
查看>>
K条最短路径算法(KSP, k-shortest pathes):Yen's Algorithm
查看>>
mysql last_insert_id() (转载)
查看>>
eclipse安装反编译插件jadclipse
查看>>
Change the Forwarding: RMT Architecture
查看>>
P1040 加分二叉树
查看>>
MySQL数据库安装(CentOS操作系统/tar.gz方式)
查看>>
Maven详解(八)------ 继承和聚合
查看>>
iOS开发ARC内存管理技术要点
查看>>
spring4.0之一:简介
查看>>
Control character in cookie value or attribute
查看>>
kali linux2.0安装vega
查看>>
我的第一个python web开发框架(6)——第一个Hello World
查看>>
Windows下swoole扩展的编译安装部署
查看>>