接口和父类的使用示例

来源:互联网 发布:数据库实时同步 编辑:程序博客网 时间:2024/06/13 08:00

一直都很迷糊的接口与父类子类问题,终于见到一个曙光了。

接口:

1、首先定义一个接口

public interface IImportData {
 public boolean importData(ArrayList<List> dataList);
}

2、书写一个实现以上接口的class
public class ImportExcelManager implements IImportData{

      public boolean importData (ArrayList<List> dataList) {

           boolean flag=true;

           return flag;
      }
}

3、调用接口

IImportData importData = (IImportData) Class.forName(“ImportExcelManager”).newInstance();
boolean   flag = importData.importData(dataList);

以上就是接口的使用方法,在使用class.forName时,后面应该是实现类的完整路径,所以其返回结果flag为true。

 

父类与子类的关系

1、书写一个父类

public class CheckData {
 
    public boolean excute() {
     System.out.println("掉用父类的校验方法");
  return false;
 }
}

2、写一个子类继承以上父类

public class MyCheckData extends CheckData {

 public boolean excute() {
  System.out.println("调用子类的校验方法");
  return false;
 }
}

3、写一个带有不定参的方法类

public class ImportExcelUtil {

 public static void ImportExcel(File file,Object ...o){//不定参传什么都可,其实就是一个数组类型的
  System.out.println(o[0]);
  CheckData cData = (CheckData) o[2];//这个地方是我最不明白的地方,其实就是将传过来的对象强制转换为父类型。实际应用是调用的子类的方法。
  CheckData cData1 = (CheckData) o[3];
//  if(cData.excute());
  if(cData1.excute());
 }
 
}

4、书写一个main方法进行实现。

public class Test {

   public static void main(String[] args) throws ClassNotFoundException {
       ImportExcelUtil.ImportExcel(null, 1,2,new MyCheckData(),new CheckData() );
    }
}


  以上,仅为个人见解。希望对于初学者有帮助。

 

原创粉丝点击