| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 421 人关注过本帖
标题:关于接口的问题求指教?
只看楼主 加入收藏
清微御宇
Rank: 6Rank: 6
来 自:开封
等 级:侠之大者
威 望:2
帖 子:318
专家分:497
注 册:2012-1-15
结帖率:100%
收藏
已结贴  问题点数:18 回复次数:2 
关于接口的问题求指教?
程序代码:
package test;

interface ISport {
    void run();
}

class Athelete implements ISport {
    public void run() {
        System.out.println("三级跳");
    }
}

class Students implements ISport {
    public void run() {
        System.out.println("我随便跑跑");
    }
}

class CollegeStudent extends Students {
    public void study() {
        System.out.println("好好学习,天天向上");
    }
}

public class AnyTest {
    public static void main(String[] args) {
        ISport i = new Athelete();
        i.run();
        i = new Students();
        i.run();
        i = new CollegeStudent();
        i.run();
        i.study();// 为山么i无法引用到设个方法?i=new CollegeStudent();
        CollegeStudent name = new CollegeStudent();
        name.study();

    }
}
搜索更多相关主题的帖子: test 接口 三级跳 
2012-11-02 20:09
lz1091914999
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:四川
等 级:贵宾
威 望:37
帖 子:2011
专家分:5959
注 册:2010-11-1
收藏
得分:18 
ISport接口中只有run这个方法,你用它来引用对象的时候,它也就只知道run,调用其它方法都是不可能的。子类是对父类的扩展,新的东西只有子类才知道。虽然实际的对象是子类,但是引用却是父类的。这就是多态了。

为什么LZ要在接口的名字前加一个I呢?不会是受到C#的影响吧?Java里面不流行这个。

My life is brilliant
2012-11-03 12:30
清微御宇
Rank: 6Rank: 6
来 自:开封
等 级:侠之大者
威 望:2
帖 子:318
专家分:497
注 册:2012-1-15
收藏
得分:0 
回复 2楼 lz1091914999
ISport随手写的,上转型已经了解了,谢谢,这里好少?半天也木人回差点跑到休闲区发了!!!

Stay hungry , Stay foolish!
2012-11-04 20:15
快速回复:关于接口的问题求指教?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018351 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved