我有两个已经继承到XYZ
国家/地区类
public class country_master : XYZ { private string _id; public string id { get { return _id; } set { _id = value; } } private string _country_code; public string country_code { get { return _country_code; } set { _country_code = value; } } private string _country_name; public string country_name { get { return _country_name; } set { _country_name = value; } } }
州级
public class state_master: XYZ { private string _id; public string id { get { return _id; } set { _id = value; } } private string _state_code; public string state_code { get { return _state_code; } set { _state_code= value; } } private string _state_name; public string state_name { get { return _state_name; } set { _state_name= value; } } }
country_name
课程中使用state_master
怎么可能?谢谢。
答案 0 :(得分:3)
您的country_master
课程中需要state_master
类型的变量。
然后,您可以访问该媒体资源country_name
。
不幸的是,不可能进行交叉继承。 (如果你有一个兄弟,你不能只用他的手,虽然你继承了同一个父母。你需要你的兄弟亲自。)
示例:
public class state_master: XYZ
{
private country_master _cm;
public country_master cm
{
get { return _cm; }
set { _cm = value; }
}
public void state_method()
{
this.cm = new country_master();
this.cm.country_name;
}
}
另一种可能性当然是在调用方法
时从外部传递变量public void state_method(string country_name)
{
// use country name
}
致电网站:
state_master sm = new state_master();
country_master csm = new country_master();
sm.state_method(cm.countr_name);
(现在你要求你的兄弟伸出援助之手)
答案 1 :(得分:2)
不止一种方法给猫皮肤。
您可以创建country_master的新实例:
public class state_master: XYZ
{
private country_master CountryMaster;
// Class constructor
public state_master()
{
CountryMaster = new country_master();
}
private string _id;
...
或将country_master的现有实例传递给构造函数:
public class state_master: XYZ
{
private country_master CountryMaster;
// Class constructor
public state_master(country_master cm)
{
CountryMaster = cm;
}
private string _id;
...
并用
调用它country_master MyCountry = new country_master();
state_master MyState = new state_master(MyCountry);
答案 2 :(得分:0)
您可以更改代码,以便state_master继承country_master
public class state_master: country_master