亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Java中關于回調的實現問題

Java中關于回調的實現問題

holy_yakutsk 2017-06-17 17:27:19
public?class?MyFrame(){ ????void?paint(){} }請問drawFrame方法中 的MyFrame ?f什么意思(不是參數么,還是new了個MyFrame對象f,然后main方法中又new了個東西,看不懂了(不知道哪個東西傳入到哪里了(路線不知道在哪里,求簡答))),
查看完整描述

3 回答

已采納
?
望遠

TA貢獻1017條經驗 獲得超1032個贊

這里是父類引用指向一個子類對象(上轉型對象),這是一種多態的體現,例如:

public?class?Animal{
????public?void?say(){
????System.out.println("動物會叫");
????}
}
class?Dog?extends?Animal{
????public?void?say(){
????????System.out.println("汪汪汪~~");
????}
}
class?Snake?extends?Animal{
????public?void?say(){
????????System.out.println("嘶嘶嘶~~");
????}
}
class?Test{
????public?void?test(Animal?animal){
????????????animal.say();
????????}
????public?static?void?main(){
????????new?Test().test(new?Animal());//輸出動物會叫
????????//new?Test().test(new?Dog());//多態,輸出汪汪汪
????????//new?Test().test(new?Snake());//多態,輸出嘶嘶嘶
????}
}

還有就是接口回調:

public?interface?Animal{
?????void?say();
}
class?Dog?implements?Animal{
????public?void?say(){
????????System.out.println("汪汪汪~~");
????}
}
class?Snake?implements?Animal{
????public?void?say(){
????????System.out.println("嘶嘶嘶~~");
????}
}
class?Test{
????public?void?test(Animal?animal){
????????????animal.say();
????????}
????public?static?void?main(){
????????new?Test().test(new?Dog());//多態,輸出汪汪汪
????????new?Test().test(new?Snake());//多態,輸出嘶嘶嘶
????}
}
查看完整回答
2 反對 回復 2017-06-17
?
holy_yakutsk

TA貢獻4條經驗 獲得超1個贊

MyFrame?f?=?new?GameFrame02();
然后好像懂了,是不是多態啊


查看完整回答
1 反對 回復 2017-06-17
  • 3 回答
  • 1 關注
  • 1663 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號