日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

java 使用接口便于维护程序_Java初学——面向对象接口的应用

發布時間:2025/3/11 java 16 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java 使用接口便于维护程序_Java初学——面向对象接口的应用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、接口

1.什么是接口

接口是比抽象類更抽象的定義,接口不可以被實例化 實現類必須實現接口的所有方法 實現類可以實現多個接口 、多個接口使用逗號隔開 接口中的變量都是靜態常量(public static final)?程序設計時面向接口的約定而不考慮具體實現 。

2.為什么使用接口

有些事物具有相同的功能,多個類可以做相同的功能,程序設計中,要做到將功能模塊化,細分化,這樣有利于代碼的改寫,減少代碼冗余度,接口和繼承類似,但是繼承具有單根性,所以有了接口這個定義。

3.怎么使用接口

接口中的成員變量 默認都是public static final的,必須顯式初始化 接口中的方法 默認都是public abstract的 ,接口沒有構造方法,不能被實例化 一個接口不能實現另一個接口,但可以繼承多個其他接口 一個類必須實現接口抽象方法,除非這個類也是抽象類

4.接口與抽象類的區別

相同點 代表系統的抽象層 都不能被實例化 都能包含抽象方法 用于描述系統提供的服務,不必提供具體實現

不同點 在抽象類中可以為部分方法提供默認實現,而接口中只能包含抽象方法 抽象類便于復用,接口便于代碼維護 一個類只能繼承一個直接的父類,但可以實現多個接口

二、利用接口完成問題

問題:墨盒和紙張的規格是一種約定 打印機需要遵守這些約定 用面向接口編程的方式開發 制定墨盒、紙張的約定或標準 其他廠商按照墨盒、紙張的標準生產墨盒、紙張 打印機廠商使用墨盒、紙張的標準開發打印機

分析:墨盒和紙張規格是個接口,需要創建類去分別實現紙張和墨盒的接口,創建打印機類去組裝墨盒和紙張打印,最后創建測試類

1.創建紙張接口

//紙張的接口

public interfacePaper {

String newline="\n";//紙張都會有換行符所以定義在接口里//寫入字符的功能

void putChar(charword);//讀取紙張上內容的功能

String getContent();

}

2.創建墨盒的接口

//創建墨盒接口

public interfaceInk {//返回指定顏色

String getColor(int r,int g,intb);

}

3.實現墨盒接口

public class ColorInk implementsInk{

@Overridepublic String getColor(int r, int g, intb) {

Color color=new Color(r,g,b);//創建color對象

return "#"+Integer.toHexString(color.getRGB()).substring(2);

}

}

4.實現紙張接口

//紙張實現類

public class TextPaper implementsPaper{int linewords=16;//定義一行有16個字符

int rows=5;//一樣有五行

int x=0;int y=0;int paper=1;

String content="";

@Overridepublic void putChar(charword) {

content+=word;

x++;//移動字符的位置

if(x==linewords){

content+=newline;

x=0;

y++;

}if(y==rows){

content+="=======第"+paper+"頁=======";

paper++;

y=0;

content+=newline+newline;

}

}

@OverridepublicString getContent() {//獲取內容的階段

if(!(x==0&&y==0)){//頁中是否存在空行 lines-y=空行 \n

int count=rows-y;for(int i=0;i

content+=newline;

}

content+="=======第"+paper+"頁=======";

}returncontent;

}

}

5.組裝墨盒

//打印機類組裝墨盒和紙張

public classPrinter {private Ink ink; //墨盒

private Paper paper; //紙張

public voidprint(String content){

System.out.println("該打印機使用的顏色是:"+ink.getColor(50, 50, 50));for (int i = 0; i < content.length(); i++) {char c=content.charAt(i);

paper.putChar(c);

}

System.out.println(paper.getContent());

}publicInk getInk() {returnink;

}public voidsetInk(Ink ink) {this.ink =ink;

}publicPaper getPaper() {returnpaper;

}public voidsetPaper(Paper paper) {this.paper =paper;

}

}

6.創建測試類

public classTest {public static voidmain(String[] args) {//準備墨盒和紙張

Ink ink=newBlackInk();

Paper paper=newTextPaper();

Printer printer=newPrinter();

printer.setInk(ink);

printer.setPaper(paper);

printer.print("2222222222222222222222222222222222222222222222222222222");//輸入的文本

}

}

總結

以上是生活随笔為你收集整理的java 使用接口便于维护程序_Java初学——面向对象接口的应用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。