从另一个类调用另一个类中存在的类方法

时间:2018-06-27 07:07:05

标签: java

在名为Sport的源文件中创建以下3个类: a)使用一种将打印游戏名称的方法即getSportName()创建两个非公共类的Hockey和Football类。
b)再创建一个类SportTest。在此类的主要方法中,创建“曲棍球”和“足球”的对象,并在方法的帮助下打印相应游戏的名称。

2 个答案:

答案 0 :(得分:0)

您需要执行多个继承,一个类tags,另一个类extend,这样才能访问方法。

例如以下是进行多重继承的伪代码:

implement

答案 1 :(得分:0)

您可以在SportTest构造函数中获取Sport类,因此您可以访问Sport类以及Football and Hockey类:

public class Sport(){
    public Football football;
    public Hockey hockey;
    public Sport(){
        football = new Football();
        hockey = new Hockey();
    }
}

public class Football{
    String getName(){return "Football";}
}
public class Hockey{
    String getName(){return "Hockey";}
}

public class SportTest{
    public SportTest(Sport sport){
        sport.football.getName(); // "Football"
        sport.hockey.getName;     // "Hockey"
    }
}

或者代替在体育课上举行足球和曲棍球。您可以将Sport设置为界面,并在Football和Hockey类中实现Sport:

public interface Sport(){
    String getName();
}

public class Football implements Sport{
    @Override
    String getName(){return "Football";}
}
public class Hockey implements Sport{
    @Override
    String getName(){return "Hockey";}
}

public class SportTest{
    public SportTest(Sport sport){
        sport.getName();
    }
}

SportTest footballTest = new SportTest(new Football()); // "Football"
SportTest hockeyTest = new HockeyTest(new Hockey()); // "Hockey"