初学JAVA接口,刚好接触到适配器模式,看了以后略有理解。所以打算把理解写下来,算是一种学习的记录吧。
首先我们要知道什么是适配器:
适配器是一个接口转换器,它可以是一个独立的硬件接口设备,允许硬件或电子接口与其它硬件或电子接口相连,也可以是信息接口。比如:电源适配器、三角架基座转接部件、USB与串口的转接设备等。(源自百度百科)
下图就是一个普通的笔记本电脑的适配器。功能:把220V的电压转换为20V左右(我的笔记本电压为19V)的电压。
提问:我们什么时候会用到这种适配器模式呢?
1、电源一般为220V,而电脑的充电电源一般为20V,如果直接充电,那么电脑可能无法承受,
这时候,就西来需要一个东西来转换电源的电压,而这个转换器就是适配器。
2、手机一般充电电源为5V,这时,手机也需要一个适配器。
//测试类
public
class
Test
{
public
static
void
main
(
String
[]
args
)
{
//插座与电源连接,输出电压
Target
s
=
new
Power
();
s
.
electricity
();
//插座与电脑适配器连接,并转换电压
Target
s2
=
new
AadpterComputer
();
s2
.
electricity
();
//插座与手机适配器连接,并转换电压
Target
s3
=
new
AdapterPhone
();
s3
.
electricity
();
}
}
/**
* 标准的插座接口
*/
interface
Target
{
/*
* 电源插座有电,而这个就是通电的方法
* 实现这个方法就证明有电
*/
public
void
electricity
();
}
/**
* 电源,有标准的接口
*/
class
Power
implements
Target
{
/**
* 这个是电源的标准输出电压
*/
public
void
electricity
()
{
System
.
out
.
println
(
"电源的输出电压为220V"
);
}
}
/**
* 这是一个电脑类,电脑电压为20
*/
class
Computer
{
/**
* 电脑的标准输入电压
*/
public
void
inputV
()
{
System
.
out
.
println
(
"电脑的充电输入电压为20V"
);
}
}
/**
* 电脑的适配器,接入插座
* 这是服务电脑的,所以要继承于电脑
* 并且适配器需要接入插口,以确保通电
*/
class
AadpterComputer
extends
Computer
implements
Target
{
/**
* 电脑的适配器实现了electricity类,所以通上了电
* 在这个方法中,把标准的电源电压转换为了电脑适用的电压
*
*/
public
void
electricity
()
{
//调用父类中的输入电压方法
//以此实现电压的转换
super
.
inputV
();
}
}
/**
* 这是一个手机类,充电输入电压为5V
*/
class
Phone
{
public
void
needV
()
{
System
.
out
.
println
(
"手机充电输入电压为5V"
);
}
}
/**
* 手机的适配器
*/
class
AdapterPhone
extends
Phone
implements
Target
{
/*
* 手机适配器接入电源,并转换电压
*/
public
void
electricity
()
{
super
.
needV
();
}
}
这是输出的结果
思考:为什么电脑要用适配器呢?
直接把电脑接插座不行吗。
解答:因为电源的标准一直都是220V(已定义好的标准的接口),这是已经定好的东西不能随意更改。
而且电脑配置已经完成,一般电脑用的都是20V左右的输入电源(另一套标准接口),
为了把(这两套接口对接),于是就有了电脑的适配器。
总结:这些是我对于JAVA适配器模式的一些小小理解,可能会存在不足。望大神点拨。