接口作為成員變量類型


package day21;

public class dempmian {
public static void main(String[] args) {
hero h=new hero();
h.setName("艾希");
/*
h.setMy(new shijian());
*/
/*
myinface me=new myinface() {
@Override
public void use() {
System.out.println("ba-ba-ba");
}
};
h.setMy(me);

*/
h.setMy(new myinface() {
@Override
public void use() {
System.out.println("kakkkakakak");
}
});
h.atrract();
}

}
package day21;
/*
接口作為成員變量類型時的三種使用方式
1:
使用實現類實現接口,接口類型的變量在調用接口內部的抽象方法時就可以使用實現類中重寫的內容;
2:使用匿名內部類,無需使用接口;
3:使用匿名對象,更加簡潔;
*/
public interface myinface {
public abstract void use();
}
package day21;

public class shijian implements myinface
{
@Override
public void use() {
System.out.println("po-po-po");
}
}
package day21;

public class hero {
myinface my;
String name;
int age;
public myinface getMy() {
return my;
}

public void setMy(myinface my) {
this.my = my;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public int getAge() {
return age;
}

public void setAge(int age) {
this.age = age;
}
public void atrract()
{
System.out.println("我叫"+name+"釋放技能");
my.use();
}
}



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM