C#中一个类内可以定义返回值为该类的方法吗?或者定义的变量类型为该类吗?不死循环吗?

2025-04-02 14:02:49
推荐回答(3个)
回答1:

当然可以,我在代码中经常这样写,比如说:

    public class SendEmailAdapter
    {
        private static SendEmailAdapter _Instance = new SendEmailAdapter();

        private SendEmailAdapter()
        {
        }

        ///
        ///实例
        ///

        public static SendEmailAdapter Instance
        {
            get
            {
                return _Instance;
            }
        }
    }

我在调用的时候,我就可以直接使用SendEmailAdapter.Instance.方法名(),就不用再去初始化了

回答2:

public class ArcNode
{
#region 私有属性
private int adjvex;//指向的顶点位置
private ArcNode nextarc;//下一条弧
#endregion

#region 属性访问器
///


/// 指向的顶点位置
///

public int Adjvex
{
set
{
adjvex = value;
}
get
{
return adjvex;
}
}
///
/// 下一条弧
///

public ArcNode Nextarc
{
set
{
nextarc = value;
}
get
{
return nextarc;
}
}
#endregion
}
像这样,没有问题,死循环是递归才会出现的问题

回答3:

可以,很多数据结构,比如linkedlist,很多节点组成,每个节点包含了两个元素:1.此节点的内容,2.下个节点的引用。和你的类似,都是包含了一个自己这个类的引用。jjkk168讲的更清楚