Android开发基础----Java基础(8)

学习内容

  • 接口
  • 接口回调数据实例
1、接口

(1)、使用interface表示定义一个接口
(2)、接口可以继承多个接口
(3)、接口内部元素:
a、接口不能被实例化(即无构造方法)
b、定义变量(只能是静态成员变量)(默认修饰符是public static final)
c、定义方法

  • 抽象方法:不需要自己实现 谁用谁就实现(默认修饰符 public abstract)
  • 使用implements实现接口 然后必须实现接口里面的方法
  • 类方法 默认方法 私有方法(这些方法是可以实现的)
    4、内部类
定义接口:
interface Season{
    int Spring = 1;
    int Summer = 2;
    int Autum = 3;
    int Winter = 4;

}
interface t2{

}
public interface Datainteraction {
    interface Input{
        void inPut();
    }
   interface Output{
       void outPut();
   }

}
使用接口:
public class printer implements Datainteraction.Input {
    @Override
    public void inPut() {
        System.out.println("打印机从电脑接收到数据");
    }
    public void printf(){
        System.out.println("打印机开始打印数据");
    }

}
public class Mause implements Datainteraction.Output {
    @Override
    public void outPut() {
        System.out.println("鼠标输入坐标位置:东经30度 北纬26度");
    }
}
public class Macbook implements Datainteraction.Input,Datainteraction.Output{

    @Override
    public void inPut() {
        
        System.out.println("苹果电脑安全输出");
    }

    @Override
    public void outPut() {
        System.out.println("苹果电脑流畅的输出");
    }
}
2. 接口回调数据实例
public class Http {

    //1.定义一个接口 统一返回数据的方式
    public interface OnHttpFinishListence{
        void onSuccess(String img);
        void onFailure(String err);
    }
    //2.定义一个变量接收谁来监听网络下在完毕的事件
    private OnHttpFinishListence listener;

    public void getData(String url){
        System.out.println("开始下载");
        System.out.println("图片下载完毕");
        //3.任务结束 回调数据
        listener.onSuccess("张柏芝与冠希哥的照片下载成功");

    }
    //4.提供set方法保存当前的监听者

    public void setListener(OnHttpFinishListence listener) {
        this.listener = listener;
    }
}
//4.使用者必须实现这个接口

public class SplashView implements Http.OnHttpFinishListence {
    public SplashView() {
        //开始下载数据

        Http http = new Http();
        //6.必须传递当前对象给功能类
        http.setListener(this);
        ////7.调用功能类 完成功能
        http.getData("wwww.baidu.com");
    }
//5.必须实现接口内部的所有抽象方法
    @Override
    public void onSuccess(String img) {
        System.out.println("展示图片"+img);
    }

    @Override
    public void onFailure(String err) {
        System.out.println("下载失败"+err);
    }
}
public class Myclass {
    public static void main(String[] args) {
        SplashView sv = new SplashView();
    }
}

你可能感兴趣的:(Android开发基础----Java基础(8))