smu*_*nd2 1 oop api class-design
我有一个我需要打电话的api方法.它有10个参数.我试图创建一个包含该方法所需的所有信息的类.我可以简单地将对象传递给方法吗?
myAPIMethod(myClass);
Run Code Online (Sandbox Code Playgroud)
这很容易吗?
Ada*_*ear 14
不,它不起作用.如果方法有10个参数,则必须向其传递10个参数.
如果您可以控制API,则可以重构它以接受单个对象.
如果您无法控制API,则可以编写一个方法
public void CallAPI(MyClass args)
{
myAPIMethod(args.Arg1, args.Arg2); // whatever args are needed for the method
}
Run Code Online (Sandbox Code Playgroud)
然后您的代码可以使用您的类和此方法来调用API.它可能比在应用程序的多个位置直接使用10个参数调用API方法更简洁.但是,这取决于方法是什么以及如何使用它.