【问题标题】:How can I use a service on a class that already extends other class?如何在已经扩展其他类的类上使用服务?
【发布时间】:2018-04-04 09:39:44
【问题描述】:

我有一个要用作服务的类,但我的类已经扩展了其他类,因此我无法从多个类扩展。有没有办法将这个类用作服务,同时它也从其他类扩展?

【问题讨论】:

  • 将此作为解耦代码的提示。一堂课不应该做两件事
  • 命名你已经扩展的类
  • FragmentActivity

标签: java android android-service extends


【解决方案1】:

您只需要接口。由于 Diamond 问题,Java 中无法实现多重继承。

你应该这样做:

public class Main extends Service implements OtherClass

This会给你一个清晰的思路

【讨论】:

    【解决方案2】:

    您不能将多个类直接扩展为一个类,它们是一些棘手的方法,其中一个定义如下:

    public class CustomActivity extends Activity {
    
         private SecondClass myClass;
    
         protected void onCreate(Bundle savedInstanceState) {
             super.onCreate(savedInstanceState);
             myClass = new SecondClass(this);
         }
    
         //Implement each method you want to use.
         public String getInfoFromOtherClass()
         {
            return myClass.getInfoFromOtherClass();
         }
     }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-01-23
      • 1970-01-01
      • 2014-12-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多