Prj10_1_bank接口

本文介绍了一个简单的面向接口编程示例,通过定义ICustomerDao接口及其实现类CustomerDao,配合DaoFactory工厂类来实例化对象。展示了如何在Action类中使用这些接口进行登录操作。

1.写一个ICustomerDao的接口,CustomerDao继承这个接口。

 

2.写一个DaoFactory这个类,里面有一个getCustomerDao()这个方法,返回一个ICustomerDao这个接口。

 

3.LoginAction这个类中:

ICustomerDao cdao = DaoFactory.getCustomerDao();//面向接口编程。

 

具体的见Prj10_1_bank

 

 

面向接口:

public class Action

{

      public void execute()

     {

             ICustomerDao cdao = DaoFactory.getCustomerDao();

             cdao.login();

     }

}

 

public class DaoFactory

{

      public static ICustomer getCustomerDao()

      {

             return new CustomerDao();

      }

}

 

public interface ICustomerDao()

{

       public abstract boolean login();

}

 

public class CustomerDao implements ICustomerDao

{

         pbulic boolean login(){/*代码*/}

}

 

 

Spring 接口:

public class Action

{

      public void execute()

     {

             ICustomerDao cdao = DaoFactory.getBean("类名");

             cdao.login();

     }

}

public class BeanFactory

{

      public static Object getBean(String className)

      {

             return Class.forName(className).newInstance();

      }

}

public interface ICustomerDao()

{

       public abstract boolean login();

}

public class CustomerDao implements ICustomerDao

{

         pbulic boolean login(){/*代码*/}

}

 

由于没有具体的引用内容,以下是一些通用的解决未找到组件 `prj451_prj_proposal_details_link` 的方法: ### 检查组件名称拼写 确保组件名称 `prj451_prj_proposal_details_link` 拼写无误,大小写也正确。在很多编程语言和框架中,组件名称是区分大小写的。 ```python # 示例:在 Python 中检查变量名拼写 # 假设这里有一个组件对象 # 正确的组件名检查 if 'prj451_prj_proposal_details_link' in available_components: print("组件存在") else: print("未找到组件") ``` ### 检查组件是否已安装 如果该组件是第三方库或插件,需要确认是否已经正确安装。例如在使用 Node.js 时,通过 `npm` 安装的组件: ```bash # 检查 package.json 中是否有该组件 cat package.json | grep prj451_prj_proposal_details_link # 如果没有安装,可以尝试安装 npm install prj451_prj_proposal_details_link ``` ### 检查组件的引入路径 确认组件的引入路径是否正确。在不同的编程语言和框架中,引入组件的方式不同。例如在 JavaScript 中: ```javascript // 错误的引入路径示例 import prj451_prj_proposal_details_link from './wrong/path/prj451_prj_proposal_details_link'; // 正确的引入路径示例 import prj451_prj_proposal_details_link from './correct/path/prj451_prj_proposal_details_link'; ``` ### 检查组件的作用域 有些组件可能有特定的作用域,比如在某个模块或命名空间中。需要确认是否在正确的作用域内查找组件。 ```python # 示例:在 Python 模块中查找组件 import my_module # 检查组件是否在模块中 if hasattr(my_module, 'prj451_prj_proposal_details_link'): component = getattr(my_module, 'prj451_prj_proposal_details_link') print("找到组件") else: print("未找到组件") ``` ### 检查组件的版本兼容性 如果使用的是有版本号的组件,可能存在版本不兼容的问题。尝试更新或回退组件版本。 ```bash # 更新组件到最新版本 npm update prj451_prj_proposal_details_link # 回退到指定版本 npm install prj451_prj_proposal_details_link@1.0.0 ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值