当前位置: 首页 > news >正文

随州抖音seo收费标准在线看seo网站

随州抖音seo收费标准,在线看seo网站,分类信息网站织梦模板,python基础教程pdf适配器模式(Adapter Pattern)是一种常用的设计模式,它可以将不兼容的接口转换成可兼容的接口,使得原本不能一起工作的类可以协同工作。 在Java中,适配器模式一般有两种实现方式,即类适配器模式和对象适配器…

适配器模式(Adapter Pattern)是一种常用的设计模式,它可以将不兼容的接口转换成可兼容的接口,使得原本不能一起工作的类可以协同工作。

在Java中,适配器模式一般有两种实现方式,即类适配器模式和对象适配器模式。下面我们来分别介绍这两种实现方式,并通过示例代码来说明它们的使用方法。

一、类适配器模式

类适配器模式使用继承来实现适配器功能。通过继承待适配类,并实现目标接口,将待适配类的接口转换为目标接口。

示例代码如下:

// 待适配类
public class Adaptee {public void specificRequest() {System.out.println("Adaptee specificRequest");}
}// 目标接口
public interface Target {public void request();
}// 适配器类
public class Adapter extends Adaptee implements Target {@Overridepublic void request() {specificRequest();}
}// 测试代码
public class Test {public static void main(String[] args) {Target target = new Adapter();target.request();}
}

在这个示例中,Adaptee是待适配的类,Target是目标接口,Adapter是适配器类,通过继承Adaptee类,并实现Target接口,将Adaptee类的接口转换为Target接口。

二、对象适配器模式

对象适配器模式使用组合来实现适配器功能。通过将待适配类的实例作为适配器类的一个成员变量,并实现目标接口,将待适配类的接口转换为目标接口。

示例代码如下:

// 待适配类
public class Adaptee {public void specificRequest() {System.out.println("Adaptee specificRequest");}
}// 目标接口
public interface Target {public void request();
}// 适配器类
public class Adapter implements Target {private Adaptee adaptee;public Adapter(Adaptee adaptee) {this.adaptee = adaptee;}@Overridepublic void request() {adaptee.specificRequest();}
}// 测试代码
public class Test {public static void main(String[] args) {Adaptee adaptee = new Adaptee();Target target = new Adapter(adaptee);target.request();}
}

在这个示例中,Adaptee是待适配的类,Target是目标接口,Adapter是适配器类,通过将Adaptee类的实例作为Adapter类的一个成员变量,并实现Target接口,将Adaptee类的接口转换为Target接口。

在Android开发中,适配器模式也有广泛的应用。比如,ListView和RecyclerView等控件都需要通过适配器来将数据绑定到视图上。

ListView的适配器通常使用ArrayAdapter、SimpleAdapter、BaseAdapter等来实现。其中,BaseAdapter是一个抽象类,需要继承并实现相关方法来完成适配器的功能。下面我们以BaseAdapter为例,来说明适配器模式在Android开发中的应用。

public class MyAdapter extends BaseAdapter {private List<String> mData; // 数据源private LayoutInflater mInflater;public MyAdapter(Context context, List<String> data) {mData = data;mInflater = LayoutInflater.from(context);}@Overridepublic int getCount() {return mData.size();}@Overridepublic Object getItem(int position) {return mData.get(position);}@Overridepublic long getItemId(int position) {return position;}@Overridepublic View getView(int position, View convertView, ViewGroup parent) {ViewHolder holder;if (convertView == null) {convertView = mInflater.inflate(R.layout.item_layout, parent, false);holder = new ViewHolder();holder.tvTitle = (TextView) convertView.findViewById(R.id.tv_title);convertView.setTag(holder);} else {holder = (ViewHolder) convertView.getTag();}String item = (String) getItem(position);holder.tvTitle.setText(item);return convertView;}private static class ViewHolder {TextView tvTitle;}
}

在这个示例中,MyAdapter继承了BaseAdapter类,并实现了相关方法来完成适配器的功能。在getView方法中,我们使用了ViewHolder模式来优化ListView的性能。

适配器模式在Android开发中的应用还有很多,比如RecyclerView的适配器、FragmentPagerAdapter的适配器等等。使用适配器模式可以将不兼容的接口转换成可兼容的接口,使得我们可以更方便地使用各种组件,并且能够提高代码的可复用性和可维护性。

http://www.hkea.cn/news/908536/

相关文章:

  • 网站移动终端建设口碑营销成功案例
  • 美国做试管婴儿 网站推广普通话宣传语
  • 网站备案信息查询系统软文发布平台媒体
  • 泊头哪给做网站的好制作网页的教程
  • 漳州建设银行网站首页在百度上打广告找谁
  • 网站免费建站k网络营销策划方案书
  • 网站建设类公网店推广的作用
  • 安平做网站除了百度指数还有哪些指数
  • 做网站公司 蓝纤科技知乎怎么申请关键词推广
  • 临沂免费做网站发表文章的平台有哪些
  • 网站推广的方式包括哪些广西网站建设制作
  • 杭州营销网站建设东莞网站建设哪家公司好
  • 企业做营销型网站手机如何制作网页
  • 连云港网站关键词优化seo自学教程
  • 网站全站出售淘宝关键词排名怎么查询
  • 龙口市规划建设局网站查询收录
  • 学校网站建设注意什么东莞网站营销推广
  • 网站设计模板是什么百度网盘人工客服电话多少
  • wordpress文章收缩长春seo优化企业网络跃升
  • 网站地图调用希爱力双效片骗局
  • 珠海网站建设维护友情链接买卖代理
  • 武汉企业网站推广外包网络广告营销案例分析
  • 深圳哪里有做网站的汕头seo排名收费
  • 如何用腾讯云主机做网站株洲发布最新通告
  • 中国建设银行官网站下载信息流广告投放公司
  • 合肥建站平台网络平台推广是干什么
  • 黄冈工程建设标准造价信息网优化工作流程
  • 怎么做服装外贸网站怎么去推广一个产品
  • 和各大网站做视频的工作总结软件推广赚佣金渠道
  • asp.net是做网站的吗企业文化培训