C# 哪些内容是可以放在内里面的?

-bootblack- 2016-04-19 10:16:39
1>小弟认为只有字段,属性,方法(包括方法的实现)是可以放在类里面的,这样理解正确吗?
2>那比如,我声明一个委托(如下程序),是可以放在类里面吗?为什么?恳请大神指教~
namespace ConsoleApplication1
{
class Program
{
delegate void MyDel(int value); //声明委托
static void PrintLow(int value) //创建委托的实例
{
Console.WriteLine("{0}-low value", value);
}

static void PrintHigh(int value)
{
Console.WriteLine("{0}-high value", value);
}

static void Main()
{
Program p = new Program();
MyDel del; //声明委托类型变量
Random rand = new Random();
int randomValue = rand.Next(99);
del = (randomValue < 50) ? new MyDel(Program.PrintLow) : new MyDel(Program.PrintHigh); //并把实例赋值给变量
del(randomValue); //调用委托对象
}
}
}
...全文
122 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
枫0子K 2016-04-20
  • 打赏
  • 举报
回复
引用 4 楼 liuchangkk1 的回复:
[quote=引用 3 楼 qq_34509904 的回复:] 还有索引器和结构都可以放在类里
结构跟类不是平级的吗,怎么可以将结构写在类中呢?[/quote] 楼主,这么跟你说可能容易理解点: 这些东西呢,技术上可以这么实现,这么写。至于要不要这么写,这个很大程度跟你设计的软件思路有关。 另外一点,我们是魔法师,我们能创造一些不存在的东西。 不要因为我们能做什么而去做,而是因为我们要做什么而去实现,那个时候,如果有需要,即使结构不支持写在类中,也应该想办法把结构“弄”在类中。
-bootblack- 2016-04-20
  • 打赏
  • 举报
回复
引用 3 楼 qq_34509904 的回复:
还有索引器和结构都可以放在类里
结构跟类不是平级的吗,怎么可以将结构写在类中呢?
qq_34509904 2016-04-19
  • 打赏
  • 举报
回复
还有索引器和结构都可以放在类里
  • 打赏
  • 举报
回复
如果你写
    class Program
    {

        public class ABC
        {
            .................
        }
那么这个 ABC 的命名空间中就有Program标识。 类型里边不仅仅可以声明方法、属性,也可以声明类型,包括委托类型。
cheng2005 2016-04-19
  • 打赏
  • 举报
回复
委托的本质是一个类,编译后就是一个类。 但是作为新学习的人,请不要这样去思考问题,先遵从语法,学习规则,等你对语言的使用有了一定的了解之后再去想深层次的问题,不然就是空中楼阁。

110,532

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧