抽象方法,传入参数的问题。

//抽象类
public interface Output {
    void getData(String msg);
}
//另一个类中的一个方法
    @Override
    public void getData(String msg) {
        // TODO Auto-generated method stub
        if (dataNum>MAX_CACHE_LINE) {
            System.out.println("Add failed");
        }
        else{
            printData[dataNum++]=msg;
        }
    }

    我想问的是getData中的参数(String msg)那个msg可以不同么,如果可以,这样的设计目的在哪呢?


墨淡
浏览 1592回答 4
4回答

XhstormR

每次传入的 msg 都可以不同啊,比如 你好 我好。

喜欢上一个人

提高拓展能力,难道你想让你的程序只能做一个功能,而不是通用功能?

四无小青年

msg只是一个方法的参数,只要是String类型的都可以。 我猜你问的应该接口设计的目的,抽象出接口是为了方便维护,特别是java的多态特性更是使用接口精髓,在代码结构层次较少时你会觉得这样做只会是画蛇添足,但当你在做一个大型项目时你就会体验到设计接口的好处了。纯手打,望采纳。

qq_匡璐_0

抽象,方法,参数 是3个不同的概念,这些都是java最最基本的概念......看你的代码的第2个注释 //另一个类中的一个方法 可能你连接口的定义都不懂 下面的代码其实是Output的一个具体实现类方法,设计出来的目的就复用代码,而方法中的参数则是复用的这段代码 不确定的部分.我讲这么多你也不一定能理解,打好基础吧先.
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java