[英]c# Main Class include “subclass”
嘿我有两节课
class Main
{
public exLog exLog;
public Main()
{
}
}
和
class exLog
{
public exLog()
{
}
public exLog(String where)
{
}
public exLog(String where, String message)
{
}
}
我试图直接给exLog打电话而不给exLog一个参数。 因此,我可以使用Main方法调用任何类。 我应该怎么做?
public String ReadFileString(String fileType, String fileSaveLocation)
{
try
{
return "";
}
catch (Exception)
{
newMain.exLog("", "");
return null;
}
}
我喜欢称它们为Main中的功能
您可以在实例化它后立即调用它。
public Main()
{
exLog = new exLog();
exLog.MethodInClass();
}
另外,如果您不在同一程序集中,则需要将exLog公开。
最后,这是C#,样式指示类名称应为PascalCased。 这是养成的好习惯。
我认为您对类,实例,构造函数和方法感到困惑。 这不起作用:
newMain.exLog("", "");
因为exLog
在这种情况下是属性 ,而不是方法 。 (这令人困惑,因为您对类和属性使用了相同的名称,这就是为什么大多数约定不鼓励这样做的原因)。
您可以在实例上调用方法 :
newMain.exLog.Log("", "");
但是然后您需要在exLog
类中更改方法的名称(并添加返回类型),以使它们不会被解释为构造函数:
class exLog
{
public void Log()
{
}
public void Log(String where)
{
}
public void Log(String where, String message)
{
}
}
Methinks,你想要像适配器模式这样的东西
class Main
{
private exLog exLog;
public Main()
{
}
public void ExLog()
{
exLog = new exLog();
}
public void ExLog(String where)
{
exLog = new exLog(where);
}
public void ExLog(String where, String message)
{
exLog = new exLog(where, message);
}
}
class Main
{
public exLog exLog;
public Main()
{
exLog = new exLog();
exLog.ReadFileString("", "");
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.