想写一个简单的新闻来学习接口,但是接口不知道怎么实现,又怎么调用?比如我用ArrayList写一个方法(SubjectArray)调用文章标题列表,这个ArrayList想对调用者透明,所以我想在接口中定义一个方法用来供调用者调用:
public interface SubjectList(){
      ArrayList SubjectArray();
}
编译并没有出错,但不知道有没有写对。如果有写对,这个SubjectArray又应当怎么跟这个接口对接起来呢?
我是这样实现,但出错了。
public class SubjectClass() implements SubjectList(){
     public ArrayList SubjectArray() throws SQLException{
         ........
     }
}
但是这个SubjectArray()会报错,错的是throws SQLException这个地方,不知道怎么解决。如果在类中编译通过了,那页面又应当怎么调用呢?大伙帮我解解,分不够的话还可以再补。

解决方案 »

  1.   

    http://blog.csdn.net/woolceo/archive/2005/10/19/509180.aspx楼主细心看看我这篇文章,会发现很多接口的好处和简单的用法。
      

  2.   

    public interface SubjectList(){
          ArrayList SubjectArray();
    }接口,为什么有括号?改成如下:public interface SubjectList{
          ArrayList SubjectArray();
    }public class SubjectClass implements SubjectList{
         public ArrayList SubjectArray() throws SQLException{
             ........
         }
    }
      

  3.   

    interface不是这样用的吧?public class OtherTest {
        public static void main(String[] args) {
            Subject s = new Subject();
            s.SubjectArray();
        }
    }interface SubjectList{
        public abstract ArrayList SubjectArray();
    }class Subject implements SubjectList{
        public ArrayList SubjectArray(){
            System.out.println("ok");
            return new ArrayList();
        }
    }
      

  4.   

    你既然在程序实现接口时抛出了throws SQLException异常,在你写接口时,方法中为什么不加,实现接口是连异常都一样的。
    public interface SubjectList(){
          ArrayList SubjectArray() throws SQLException;
    }
      

  5.   

    如果不用括号的话,带参数的时候怎么办?而且我在接口的方法中也抛出错误,在定义方法的类中同样会出错,所以才不清楚应当怎么定义都是正常的。还有就是接口产生之后,页面要调用这些方法,是通过接口调用还是直接调用方法?
    如果是调用方法的话,接口的优势存在哪?如果是通过接口调用方法的话,又应当怎么调用?
    我用jsp:useBean无法调用成功。
      

  6.   

    现在接口的概念已经弄了差不多了。
    只是现在有一个调用的问题,我想页面通过接口来调用相关的方法,应当怎么调用呢?
    页面中用jsp:useBean没有办法调用成功。
      

  7.   

    public interface SubjectList{
          ArrayList SubjectArray();
    }
    public class SubjectClass implements SubjectList{
         public ArrayList SubjectArray() throws SQLException{
             ........
         }
    }类跟接口的定义都不需要加括号吧
    类跟接口里边有方法
    方法的定义才要名称加括号的
      

  8.   

    public interface SubjectList{
          ArrayList SubjectArray();
    }
    public class SubjectClass implements SubjectList{
         public ArrayList SubjectArray() throws SQLException{
             ........
         }
    }
    这才是java接口
    顺便说一下,我们说interface时,应该说“java接口”,而一般的类中的特征方法称为“接口”
    所有的技术文档中都应该这么统一称呼
      

  9.   

    java接口的写法已经大概弄清楚怎么写了(简单的),现在问题是怎么在页面中使用?