一家汽車廠家采納了一套驅(qū)動(dòng)車載音響(CarAudio)的協(xié)議,讓凡是遵守這個(gè)協(xié)議的車載音

一家汽車廠家采納了一套驅(qū)動(dòng)車載音響(CarAudio)的協(xié)議,讓凡是遵守這個(gè)協(xié)議的車載音響制造商所生產(chǎn)的產(chǎn)品,都能在汽車(Car)上使用。車載音響上的功能包括播放(play)、暫停(pause)、上一首(prev)、下一首(next)、調(diào)節(jié)聲音大(turnUp)、調(diào)節(jié)聲音?。╰urnDown)。目前有Philips和BOSE兩個(gè)品牌的音響滿足這個(gè)協(xié)議。請(qǐng)參照類圖(注意有傾斜角度的類或方法代表泛型是抽象)實(shí)現(xiàn)相關(guān)類的代碼框架。

一家汽車廠家采納了一套驅(qū)動(dòng)車載音響(CarAudio)的協(xié)議,讓凡是遵守這個(gè)協(xié)議的車載音響制造商所生產(chǎn)的產(chǎn)品,都能在汽車(Car)上使用。車載音響上的功能包括播放(play)、暫停(pause)、上一首(prev)、下一首(next)、調(diào)節(jié)聲音大(turnUp)、調(diào)節(jié)聲音?。╰urnDown)。目前有Philips和BOSE兩個(gè)品牌的音響滿足這個(gè)協(xié)議。請(qǐng)參照類圖(注意有傾斜角度的類或方法代表泛型是抽象)實(shí)現(xiàn)相關(guān)類的代碼框架。
?
package?chezaiyinxiang;
?
?
?
public?class?BOSE implements?CarAudio{
public?void?play() {
System.out.println("我是BOSE品牌上的播放鍵");
}
public?void?pause(){
System.out.println("我是BOSE品牌上的暫停鍵");
}
public?void?prev(){
System.out.println("我是BOSE品牌上的上一首");
}
public?void?next(){
System.out.println("我是BOSE品牌上的下一首");
}
public?void?turnUp(){
System.out.println("我是BOSE品牌上調(diào)節(jié)聲音大的");
}
public?void?turnDown(){
System.out.println("我是BOSE品牌上調(diào)節(jié)聲音小的");
}
?
}
?
?
package?chezaiyinxiang;
?
?
?
public?class?BOSEText {
public?static?void?main(String[] args) {
Car c=new?Car();
c.carAudio=new?BOSE();
c.play();
c.pause();
c.prev();
c.next();
c.turnUp();
c.turnDown();
}
?
?
}
?
package?chezaiyinxiang;
?
public?class?Car {
CarAudio carAudio;
public?void?play() {
carAudio.play();
}
public?void?pause() {
carAudio.pause();
}
public?void?prev() {
carAudio.prev();
}
public?void?next() {
carAudio.next();
}
public?void?turnUp() {
carAudio.turnUp();
}
public?void?turnDown() {
carAudio.turnDown();
}
}
?
?
?
package?chezaiyinxiang;
?
?
?
public?interface?CarAudio {
public?void?play();
public?void?pause();
public?void?prev();
public?void?next();
public?void?turnUp();
public?void?turnDown();
}
?
?
package?chezaiyinxiang;
?
?
?
public?class?Philips implements?CarAudio{
public?void?play() {
System.out.println("我是Philips品牌上的播放鍵");
}
public?void?pause(){
System.out.println("我是Philips品牌上的暫停鍵");
}
public?void?prev(){
System.out.println("我是Philips品牌上的上一首");
}
public?void?next(){
System.out.println("我是Philips品牌上的下一首");
}
public?void?turnUp(){
System.out.println("我是Philips品牌上調(diào)節(jié)聲音大的");
}
public?void?turnDown(){
System.out.println("我是Philips品牌上調(diào)節(jié)聲音小的");
}
?
}
?
?
package?chezaiyinxiang;
?
public?class?PuilipsText {
?
public?static?void?main(String[] args) {
Car c?= new?Car();
c.carAudio?= new?Philips();
c.play();
c.pause();
c.prev();
c.next();
c.turnUp();
c.turnDown();
}
?
?
}
?
?
?