我想将一个类的方法用于另一个类。
eg: public class controller 1{
public void method 1(){}
}
public class controller 2{
public void method 2() { }
}
我想在类控制器 2 中使用方法 1。请帮我找到解决方案
我想将一个类的方法用于另一个类。
eg: public class controller 1{
public void method 1(){}
}
public class controller 2{
public void method 2() { }
}
我想在类控制器 2 中使用方法 1。请帮我找到解决方案
您可以使用两种方法:
1.使用静态方法
您不能在此处使用 controller2 实例方法
public class controller2
{
public static string method2(string parameter1, string parameter2) {
// put your static code in here
return parameter1+parameter2;
}
...
}
在单独的类文件中调用 method2()
// this is your page controller
public class controller1
{
...
public void method1() {
string returnValue = controller2.method2('Hi ','there');
}
}
2.创建另一个类的实例
public class controller2
{
private int count;
public controller2(integer c)
{
count = c;
}
public string method2(string parameter1, string parameter2) {
// put your static code in here
return parameter1+parameter2+count;
}
...
}
public class controller1
{
...
public void method1()
{
controller2 con2 = new controller2(0);
string returnValue = con2.method2('Hi ','there');
}
}
如果您的方法位于具有命名空间的包中
string returnValue = mynamespace.controller2.method2();
您可以通过实例化您正在调用的类来做到这一点。
// source class
public class MyClass1 {
public MyClass1() {} // constructor
public void MyMethod1() {
// method code
}
}
// calling class
public class MyClass2 {
public void MyMethod2() {
// call MyMethod1 from MyClass1
MyClass1 c = new MyClass1(); // instantiate MyClass1
c.MyMethod1();
}
}
请注意,如果源类是全局的(而不是公共的)并且其方法是 Web 服务,您也可以使用MyClass1.MyMethod1();
.