怎么调用父类

jakingcheng 2009-04-30 03:35:42
我有一个类a, 在a里面new 了一个类b,我怎么在b里面调用a中的一个变量.
不能继承,不能传this参数给b。
...全文
124 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
body8280 2009-05-01
  • 打赏
  • 举报
回复
将A类中的变量定义成公有的(public)而且是静态的( static )
然后在B类里直接调用(A类的名.变量名)就OK 了
烈火蜓蜻 2009-04-30
  • 打赏
  • 举报
回复
这有什么难度,把a的实例当然参数传给b就可以了
wanglelele 2009-04-30
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 jest850615 的回复:]
C# codepublicclassB
{publicB(objectpara)
{
para_=para;
}privateobjectpara_;//todo...}publicclassA
{publicA()
{
B b=newB(para_);//single-data-parameter coupling}privateobjectpara_;//todo...}

你要的是这种效果么?
[/Quote]
同意
但此问题不是父类啊!
sushou2009 2009-04-30
  • 打赏
  • 举报
回复
这个跟父类貌似没关系哈~~做成public的然后实例化就行啊~
jakingcheng 2009-04-30
  • 打赏
  • 举报
回复
不能用静态,也不能在B类内NEW 就要调用A类的那个实例里面的东西。
terrydio 2009-04-30
  • 打赏
  • 举报
回复
同意楼上的看法,应该这样做,其实也就是将A里边的变量传递给B里边而已,在B里边加入一个变量,用于接收A的值就可以了。
B b=new B(t);

class A
{
private T;
B b=new B(T);
}
class B
{
private int T;
pulic B(int t)
{
T=t;
}
}
jest850615 2009-04-30
  • 打赏
  • 举报
回复

public class B
{
public B(object para)
{
para_ = para;
}

private object para_;

//todo...
}

public class A
{
public A()
{
B b = new B(para_);//single-data-parameter coupling
}

private object para_;
//todo...
}


你要的是这种效果么?
hx_huang 2009-04-30
  • 打赏
  • 举报
回复
有静态得嘛!
zhu_chuan_hang 2009-04-30
  • 打赏
  • 举报
回复
设置A类的public属性
在B类中实例A类的对象
applewar007 2009-04-30
  • 打赏
  • 举报
回复
看类和方法是不是公有的
marvelstack 2009-04-30
  • 打赏
  • 举报
回复
给A类实现全局访问点,比如单件模式,就可以很容易做到,
实现单件模式可以参考:
http://blog.csdn.net/zhzuo/archive/2004/07/16/42685.aspx

另外一种简单的实现是定义一个静态类,添加一个静态属性,指向A类实例,然后再B类里面通过访问该静态类的属性得到A类实例。
mykelly6 2009-04-30
  • 打赏
  • 举报
回复
如果a里面的变量是static的话只要ClassA.变量名,不然就要在ClassB创建ClassA的对象了。
其实类之间的传值和变量的作用范围就那么几种,自己写代码试试就知道了
justindreams 2009-04-30
  • 打赏
  • 举报
回复
哪有父类??
LemIST 2009-04-30
  • 打赏
  • 举报
回复
要看a的变量是不是public了

111,126

社区成员

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

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

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