Java 从Android活动类调用接口方法
下面是接口类 公共接口ICAA认证{ 字符串getTicketGrantingTicketString用户名、字符串密码、字符串hostUrl、字符串casUrl; } 这是实现接口的类方法 公共类身份验证实现ICasAuthentication{ 私有IServiceHandler _IServiceHandler=null; 公共CASEAuthenticationServiceHandler iServiceHandler { 这个。_iServiceHandler=iServiceHandler; } } 公共字符串getTicketGrantingTicketString用户名、字符串密码、字符串hostUrl、字符串casUrl{ Map postData=新HashMap; postData.putusername,用户名; postData.putpassword,密码; postData.puthostUrl,hostUrl; 字符串响应=\u iServiceHandler.makeServiceCallStringcasUrl,MethodTypes.POST.toString,postData; 返回null; } } 现在我有了如下代码的android活动类。我想从我的android类调用ICasAuthentication方法。我怎样才能完成这项任务 公共类LoginActivity扩展AppCompatActivity实现LoaderCallbacks{ @凌驾 受保护的void onCreateBundle savedInstanceState{ super.onCreatesavedInstanceState; setContentViewR.layout.activity\u登录; 字符串用户名=测试; 字符串密码=test2; 字符串hostUrl=; 字符串casUrl=; } }Java 从Android活动类调用接口方法,java,android,android-layout,android-fragments,Java,Android,Android Layout,Android Fragments,下面是接口类 公共接口ICAA认证{ 字符串getTicketGrantingTicketString用户名、字符串密码、字符串hostUrl、字符串casUrl; } 这是实现接口的类方法 公共类身份验证实现ICasAuthentication{ 私有IServiceHandler _IServiceHandler=null; 公共CASEAuthenticationServiceHandler iServiceHandler { 这个。_iServiceHandler=iServiceHa
要调用接口方法,必须创建已实现类的对象,然后可以使用该对象引用函数。 例如:
如果我理解正确,您可以实例化该类并按如下方式调用该方法:
ICasAuthentication myClass = newCasAuthentication(new IServiceHandler());
myClass.getTicketGrandingTicket(...);
您应该为此尝试实现一个。获取错误IserviceHandler是抽象的;无法实例化设置错误IserviceHandler是抽象的;无法实例化,因为IServiceHandler也是一个接口类。我无法创建接口类的实例。这给了我一个错误。我如何解决这个问题。@AnandaPrasadJaisy那么你必须在活动中实现IServiceHandler,并传递引用,回答编辑
ICasAuthentication myClass = newCasAuthentication(new IServiceHandler());
myClass.getTicketGrandingTicket(...);