真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

接口java程序代碼 Java接口代碼

求JAVA接口代碼

interface l1 { abstract void test(int i); } interface l2 { abstract void test(String s); } public class jiekou implements l1,l2 { public void test(int i) { System.out.println("接口1"); } public void test(String s) { System.out.println("接口2"); } public static void main(String args[]) { jiekou t=new jiekou(); t.test(42); t.test("Hello"); } } 下一個(gè)是內(nèi)部接口 public class groupsix { public interface student_info { public void out(); } public class student implements student_info { int count; String name; public student(String n1) { name=n1; count++; } public void out() { System.out.println(this.name+" count="+this.count); } } public groupsix(String name1[]) { student s1; int i=0; while(iname1.length) { s1=new student(name1[i]); s1.out(); i++; } } public static void main(String args[]) { String arr[]={"A","B","C"}; groupsix g6; new groupsix(arr); } }

專注于為中小企業(yè)提供成都網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)樂東黎族免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了成百上千家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

Java 接口程序

你這個(gè)命題是典型的策略模式(設(shè)計(jì)模式中的一種)

不同的交通工具就是每一個(gè)裝在“錦囊”(接口)中的“錦囊妙計(jì)”(策略)

你可以搜索一下關(guān)鍵字“策略模式”

也可你看一下我這個(gè)故事:

劉備要到江東娶老婆了,走之前諸葛亮給趙云(伴郎)三個(gè)錦囊妙計(jì),說是按天機(jī)拆開解決棘手問題,

嘿,還別說,真是解決了大問題,搞到最后是周瑜陪了夫人又折兵呀,那咱們先看看這個(gè)場景是什么樣子

的。

先說這個(gè)場景中的要素:三個(gè)妙計(jì),一個(gè)錦囊,一個(gè)趙云,妙計(jì)是小亮同志給的,妙計(jì)是放置在錦囊

里,俗稱就是錦囊妙計(jì)嘛,那趙云就是一個(gè)干活的人,從錦囊中取出妙計(jì),執(zhí)行,然后獲勝,用JAVA 程序

怎么表現(xiàn)這個(gè)呢?

計(jì)是同一類型的東東,那咱就寫個(gè)接口:

package com.cbf4life.strategy;

/**

* @author cbf4Life cbf4life@126.com

* I'm glad to share my knowledge with you all.

* 首先定一個(gè)策略接口,這是諸葛亮老人家給趙云的三個(gè)錦囊妙計(jì)的接口

*

*/

public interface IStrategy {

//每個(gè)錦囊妙計(jì)都是一個(gè)可執(zhí)行的算法

public void operate();

}

您的設(shè)計(jì)模式

第 5 頁

然后再寫三個(gè)實(shí)現(xiàn)類,有三個(gè)妙計(jì)嘛:

package com.cbf4life.strategy;

/**

* @author cbf4Life cbf4life@126.com

* I'm glad to share my knowledge with you all.

* 找喬國老幫忙,使孫權(quán)不能殺劉備

*/

public class BackDoor implements IStrategy {

public void operate() {

System.out.println("找喬國老幫忙,讓吳國太給孫權(quán)施加壓力");

}

}

package com.cbf4life.strategy;

/**

* @author cbf4Life cbf4life@126.com

* I'm glad to share my knowledge with you all.

* 求吳國太開個(gè)綠燈

*/

public class GivenGreenLight implements IStrategy {

public void operate() {

System.out.println("求吳國太開個(gè)綠燈,放行!");

}

}

package com.cbf4life.strategy;

/**

* @author cbf4Life cbf4life@126.com

* I'm glad to share my knowledge with you all.

* 孫夫人斷后,擋住追兵

*/

public class BlockEnemy implements IStrategy {

public void operate() {

您的設(shè)計(jì)模式

第 6 頁

System.out.println("孫夫人斷后,擋住追兵");

}

}

好了,大家看看,三個(gè)妙計(jì)是有了,那需要有個(gè)地方放這些妙計(jì)呀,放錦囊呀:

package com.cbf4life.strategy;

/**

* @author cbf4Life cbf4life@126.com

* I'm glad to share my knowledge with you all.

* 計(jì)謀有了,那還要有錦囊

*/

public class Context {

//構(gòu)造函數(shù),你要使用那個(gè)妙計(jì)

private IStrategy straegy;

public Context(IStrategy strategy){

this.straegy = strategy;

}

//使用計(jì)謀了,看我出招了

public void operate(){

this.straegy.operate();

}

}

然后就是趙云雄赳赳的揣著三個(gè)錦囊,拉著已步入老年行列的、還想著娶純情少女的、色迷迷的劉老

爺子去入贅了,嗨,還別說,小亮的三個(gè)妙計(jì)還真是不錯(cuò),瞅瞅:

package com.cbf4life.strategy;

/**

* @author cbf4Life cbf4life@126.com

* I'm glad to share my knowledge with you all.

*/

public class ZhaoYun {

/**

* 趙云出場了,他根據(jù)諸葛亮給他的交代,依次拆開妙計(jì)

*/

public static void main(String[] args) {

Context context;

您的設(shè)計(jì)模式

第 7 頁

//剛剛到吳國的時(shí)候拆第一個(gè)

System.out.println("-----------剛剛到吳國的時(shí)候拆第一個(gè)-------------");

context = new Context(new BackDoor()); //拿到妙計(jì)

context.operate(); //拆開執(zhí)行

System.out.println("\n\n\n\n\n\n\n\n");

//劉備樂不思蜀了,拆第二個(gè)了

System.out.println("-----------劉備樂不思蜀了,拆第二個(gè)了-------------");

context = new Context(new GivenGreenLight());

context.operate(); //執(zhí)行了第二個(gè)錦囊了

System.out.println("\n\n\n\n\n\n\n\n");

//孫權(quán)的小兵追了,咋辦?拆第三個(gè)

System.out.println("-----------孫權(quán)的小兵追了,咋辦?拆第三個(gè)

-------------");

context = new Context(new BlockEnemy());

context.operate(); //孫夫人退兵

System.out.println("\n\n\n\n\n\n\n\n");

/*

*問題來了:趙云實(shí)際不知道是那個(gè)策略呀,他只知道拆第一個(gè)錦囊,

*而不知道是BackDoor這個(gè)妙計(jì),咋辦? 似乎這個(gè)策略模式已經(jīng)把計(jì)謀名稱寫出來了

*

* 錯(cuò)!BackDoor、GivenGreenLight、BlockEnemy只是一個(gè)代碼,你寫成first、second、

third,沒人會(huì)說你錯(cuò)!

*

* 策略模式的好處就是:體現(xiàn)了高內(nèi)聚低耦合的特性呀,缺點(diǎn)嘛,這個(gè)那個(gè),我回去再查查

*/

}

}

就這三招,搞的周郎是“陪了夫人又折兵”呀!這就是策略模式,高內(nèi)聚低耦合的特點(diǎn)也表現(xiàn)出來了,

還有一個(gè)就是擴(kuò)展性,也就是OCP 原則,策略類可以繼續(xù)增加下去,只要修改Context.java 就可以了,這

個(gè)不多說了,自己領(lǐng)會(huì)吧。

以上摘自網(wǎng)絡(luò),詳情參考 設(shè)計(jì)模式.pdf

里面還有類圖

JAVA 接口與多態(tài) 求符合下列要求的代碼

多態(tài)是面向?qū)ο缶幊痰奶卣髦?,而接口是一系列方法的聲明,是一些方法特征的集合,有特定的語法和結(jié)構(gòu),這兩者根本不是同一類型和層次上的概念。接口毫無疑問可以體現(xiàn)出多態(tài)性來,但是多態(tài)性未必一定要用接口,只要存在方法的重寫、重載與動(dòng)態(tài)連接即可體現(xiàn)多態(tài)性(如存在繼承關(guān)系的類之間),所以,不存在“什么時(shí)候用接口什么時(shí)候用多態(tài)”的問題,程序里寫的具體代碼只可能是接口,只是這代碼可能會(huì)體現(xiàn)出多態(tài)性而已,兩者可以在不同的概念層次上并存,不存在沖突。

簡而言之,你可以在程序里用代碼定義一個(gè)接口,但是你不能定義一個(gè)多態(tài),多態(tài)只是對(duì)你代碼特征的一種描述,一種概念上的抽象和總結(jié)。

自定義接口的JAVA代碼

三個(gè)錯(cuò):

1.Chicken 類里的howtoeat方法改howtoEat;

2.Apple類和Orange 放到Fruit 類外面。

3。Chicken 類的構(gòu)造方法需要給重量參數(shù),因?yàn)槟阒欢x了一個(gè)構(gòu)造方法。

我調(diào)試的沒問題,改后代碼:

interface Edible{

public String howtoEat();

}

class Animal{

}

class Chicken extends Animal implements Edible,Comparable{

int weight;

public Chicken(int weight){

this.weight=weight;

}

public String howtoEat(){

return "fry it";

}

public int compareTo(Object o){

return weight-((Chicken)o).weight;

}

}

class Tiger extends Animal{

}

abstract class Fruit implements Edible

{}

class Apple extends Fruit {

public String howtoEat(){

return "Make apple cider";

}

class Orange extends Fruit{

public String howtoEat(){

return "Make orange juice";

}

}

}

public class Test{

public static void main(String[] args){

Object[] objects={new Tiger(),new Chicken(10),new Apple()};

for(int i=0;iobjects.length;i++){

showObject(objects[i]);

}

}

public static void showObject(Object object){

if(object instanceof Edible)

System.out.println(((Edible)object).howtoEat());

}

}

求高手幫我看段Java關(guān)于接口的一段代碼

1.implements PCI是實(shí)現(xiàn)PCI 接口的意思;

2.不是;這兩個(gè)方法是必須寫的,不能少;這兩個(gè)方法來自接口中的,既然現(xiàn)實(shí)了PCI接口,就一定要實(shí)現(xiàn)接口中的所有方法

3.PCI nc= new NetworkCard(); 因?yàn)镹etworkCard實(shí)現(xiàn)了PCI接口,PCI就類似是NetworkCard的父類,這個(gè)體現(xiàn)了面相對(duì)象編程中的多態(tài);就好比你是一個(gè)男生,我可以說你是一個(gè)人吧,意思是一樣的;

4.PCI nc = new PCI()這個(gè)是不能直接這樣寫的,因?yàn)镻CI是接口,接口中沒有構(gòu)造方法,這個(gè)是new不出來對(duì)象的


新聞標(biāo)題:接口java程序代碼 Java接口代碼
分享地址:http://weahome.cn/article/dooipcd.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部