| 编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛
全能ASP/PHP/ASP.NET主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付买域名,送MP3、MP4
高端软件开发 = 年薪十万不是梦赛孚耐:软件保护加密专家身份认证令牌USB KEY买空间,免费送域名(厦门中资源)
共有 419 人关注过本帖
标题:麻烦给解释一下
收藏  订阅  推荐  打印 
海蓝啸
Rank: 12Rank: 12Rank: 12
来自:安徽
等级:贵宾
威望:17
帖子:1606
积分:16753
注册:2006-4-3
麻烦给解释一下

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication5
{   class baseclass
  {
    public baseclass():this(5)
               {
           Console.WriteLine("已创建一个baseclass对象");
       }
       public baseclass(int i)
       {
           Console.Write(i);
           Console.WriteLine("已创建一个带一个形参baseclass对象");
       }
    public void dosomething()
    {
        Console.WriteLine("base class");
    }
  }
   class myclass : baseclass
   {
      protected myclass()
       {
           Console.WriteLine("已创建一个myclass对象");
       }
       public myclass(int i)
       {
           Console.WriteLine("已创建一个带一个形参myclass对象");
       }
    public void dosomething()
    {
        Console.WriteLine("my class");
    }
   }
    class Program
    {
        static void Main(string[] args)
        {
            myclass m1 = new myclass();     // 这里我定义一个对象,通过构造函数初始化,不是说protected是本类或子类可
[color=red]                                                                  以访问的吗,为什么会报错
[/color]            m1.dosomething();
            Console.ReadKey();
        }
    }
}
搜索更多相关主题的帖子: using  baseclass  Console  System  
2007-12-6 16:51
海蓝啸
Rank: 12Rank: 12Rank: 12
来自:安徽
等级:贵宾
威望:17
帖子:1606
积分:16753
注册:2006-4-3

怎么没人说个话啊

这个社会太复杂。。。
2007-12-7 08:22
changhai0605
Rank: 2
等级:注册会员
帖子:59
积分:724
注册:2005-11-17

是在本类和子类中使用的,类Program和myclass 是不同类,而Program不是myclass的子类
所以调用不了构造函数

2007-12-7 08:58
海蓝啸
Rank: 12Rank: 12Rank: 12
来自:安徽
等级:贵宾
威望:17
帖子:1606
积分:16753
注册:2006-4-3

把program定义成他的子类也不行。。你试试

这个社会太复杂。。。
2007-12-7 09:23
doughty
Rank: 3Rank: 3
等级:中级会员
帖子:344
积分:3838
注册:2007-10-18

报什么错误啊,,贴上来看看,,,,
2007-12-7 11:11
changhai0605
Rank: 2
等级:注册会员
帖子:59
积分:724
注册:2005-11-17

你不能定义myClass的对象来调用
应该将Program定义成子类,Program p = new Program();
使用p.dosomething();来调用
这才是从子类中调用父类的Protected成员

2007-12-7 11:19
关于我们 | 广告合作 | 编程中国 | 清除Cookies | Archiver | WAP | TOP

编程中国 版权所有,并保留所有权利。鲁ICP备08000592号
Powered by Discuz, Processed in 0.066767 second(s), 9 queries.
Copyright©2004-2008, BCCN.NET, All Rights Reserved