关于 c# 类 与 类

qmanzbxv 2009-12-05 10:32:10
我有一个类A,一个类B,一个类C

B类里有属性name,

C类有属性Color,

我想 A newa = new A();

然后可以 newa.B.name = "";

newa.C.Color = "";

这种效果~!!

就像
Table Ta = new Table();
Ta.Rows.Count = 3;

A类里面要怎么写啊??和B,C类是什么啊???????

各位强人帮帮忙~~~~~!!!!!!
...全文
158 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangwfksyc 2009-12-07
  • 打赏
  • 举报
回复
B 和 C类 都各有各的方法,写好之后,在A类中进行实例化B 和 C类,然后在调用类中的方法就行了。
wuyq11 2009-12-05
  • 打赏
  • 举报
回复
class A
{
public B B{get;set;}
public C C{get;set;}
}

class B
{
public string name{get;set;}
或private string _name;
public string name
{
get{return _name;}
set {_name=value;}
}

}

class C
{
public string Color{get;set;}
}
gao19892008 2009-12-05
  • 打赏
  • 举报
回复
同上 。。。
tbinjiayou 2009-12-05
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 wuyi8808 的回复:]
C# codeclass Program
{staticvoid Main()
{
A newa=new A();// 然后就可以: newa.B.name="";
newa.C.Color="";
}
}class A
{public B B=null;public C C=null;
}class B
{publicstring name;
}class ?-
[/Quote]
这个似乎会出问题,在VS2008下调试,B、C指向了未赋值的引用。应该在类A中先创建B、C的对象,才可以赋值使用。
Java_And_NET 2009-12-05
  • 打赏
  • 举报
回复
七楼写了,偶没什么说的...
prosoul 2009-12-05
  • 打赏
  • 举报
回复
同意7楼的写法!
cuike519 2009-12-05
  • 打赏
  • 举报
回复
然后可以 newa.B.name = "";

newa.C.Color = "";

这里面的B,C是B,C类型的属性。
wuyi8808 2009-12-05
  • 打赏
  • 举报
回复
class Program
{
static void Main()
{
A newa = new A();

// 然后就可以:
newa.B.name = "";
newa.C.Color = "";
}
}

class A
{
public B B = null;
public C C = null;
}

class B
{
public string name;
}

class C
{
public string Color;
}
3tzjq 2009-12-05
  • 打赏
  • 举报
回复
class B
{
protected string m_name=string.Empty;
public string Name{get{return m_name;}set{m_name=value;}}
}

class B
{
protected Color m_color=Color.Empty;
public Color Color {get{return m_color;}set{m_color=value;}}
}

public class A
{
protected B m_b=null;
protected C m_c=null;

public A()
{
m_b= new B();
m_c= new C();
}
public B B{get{return m_b;}}
public C C{get{return m_c;}}

}
我姓区不姓区 2009-12-05
  • 打赏
  • 举报
回复

class A
{
public B B { get; set;}
public C C { get; set;}
}

class B
{
public string name { get; set;}
}

class C
{
public string Color { get; set;}
}
tianrui456 2009-12-05
  • 打赏
  • 举报
回复

class A
{
public B B1 = new B();
public C C1 = new C();
}

是这样的嘛?
wuyi8808 2009-12-05
  • 打赏
  • 举报
回复
class A
{
public B B;
public C C;
}

class B
{
public string name;
}

class C
{
public string Color;
}
xupeihuagudulei 2009-12-05
  • 打赏
  • 举报
回复
那不是类,那是方法。
qmanzbxv 2009-12-05
  • 打赏
  • 举报
回复
自己先顶个~!!!
Justin-Liu 2009-12-05
  • 打赏
  • 举报
回复
大家都会~
tbinjiayou 2009-12-05
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 wuyq11 的回复:]
class A
{
  public B B{get;set;}
  public C C{get;set;}
}

class B
{
  public string name{get;set;}
或private string _name;
public string name
{
get{return _name;}
set {_name=value;}
}

}

class C
{
  public string Color{get;set;}
}
[/Quote]
在A的构造函数中不创建B、C对象不会出问题吗?即使在主函数中创建A的对象,它调用了无参的默认构造函数,因为B、C是引用类型,它们只是被赋予了一个空的引用而已,而没有创建实际的对象。这样还可以对它们的属性赋值吗?难道我的理解有误?

110,538

社区成员

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

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

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