Java中接口与实例化

一.问题引入

        前两天学代理模式的时候想到的,接口可不可以new呢?

        接口是特殊的抽象类,接口的方法都默认为  public  abstract  的。。。 抽象的方法不能new的哦,不能被实例化,为什么new ActionListener(){} 可以?不多说了,直接看资料。

二.若干资料

        Java不能同时继承多个类,但是可以继承多个接口;接口可以用来变相的继承多个类;为什么new ActionListener(){} 可以这样,接口可以被new吗?new ActionListener(){} 这种形式,是要在{}中重写接口中的方法。接口不能new ,不过可以生成一个匿名类,当然,匿名类不止实现接口这一种。省略了写一个具体类实现ActionListener接口的开销。

        接口不能直接new,但是它可以作为别的类的变量。如果有类实现了这个接口,则可以new! 举一个简单的例子:java.lang.List是一个接口,但是List<String> list=new ArrayList<String>();是没有任何错误的,因为ArrayList实现了List接口。接口编程是为了实现多继承,在java web中的spring框架下用到十分多。

三.简单例子


实现匿名类。最简单的线程类,可以这么写。
Thread thread = new Thread(new Runnable() {
@Override
public void run() {
// TODO Auto-generated method stub

}
});


-------------------------------------------------------------------------------------------------------------------------


class Test {
  int start=1;
  int end=100;
  public static void main(String[] args) {
     new Test().go();
  }

  void go() {
      Runnable a=new Runnable() {
         public void run() {
            for(int i=start;i<end;i++)
              System.out.println(i);
         }
      };
      Thread t=new Thread(a);
      t.start();
  }
}

 

时间: 2024-08-02 08:57:41

Java中接口与实例化的相关文章

Java中接口和抽象类的区别与相同之处

  这篇文章主要介绍了Java中接口和抽象类的区别与相同之处,本文讲解了抽象类的概念.接口的概念.接口和抽象类的区别与联系等内容,需要的朋友可以参考下 1. 抽象类: (1).概念:抽象类是对一种事物的抽象,即对类抽..抽象类是对整个类整体进行抽象,包括属性.行为.Java抽象类和Java接口一样,都用来声明一个新的类型.并且作为一个类型的等级结构的起点. (2).格式: 代码如下: public abstract class abstractDemo{ /**属性*/ private Stri

java中接口没有构造方法那子类怎么访问他的数据

问题描述 java中接口没有构造方法那子类怎么访问他的数据 感觉跟以往学过的知识冲突了?哪位大神能伸出援手解答下?这个问题困扰我好久了,希望走过路过的不要错过哈! 解决方案 接口有什么数据?接口就是一个定义,不存任何数据. 解决方案二: 接口中没有任何函数,接口不是类,不能构造一个接口.只能构造一个实现了这个接口的函数. 解决方案三: 接口就是公共方法的集合,只有公有常量和抽象方法,数据是类的属性,只有类才可以定义私有成员变量的. 解决方案四: 接口,不能实例化,没有构造方法 解决方案五: 接口

java中接口的实现类有的命名为XxxSupport,请问这个Support是什么意思,和XxxImpl意义相同吗

问题描述 如题:java中接口的实现类有的命名为XxxSupport,请问这个Support是什么意思,和XxxImpl意义相同吗,请问这是什么模式或者思想 解决方案 Support 一般是抽象类,里边存放子类可复用的东西 共性如 struts2的ActionSupport spring的 ***DaoSupporthttp://jinnianshilongnian.iteye.com/blog/1685963Impl表示实现:是个性 即细节实现,不同的Impl里边的算法可能不一样 但都是完成同

关于java中接口的作用

问题描述 关于java中接口的作用 java中接口有什么作用,新手,求教.为什么要写接口 我直接写实现的方法不就行了么 接口又有什么用 字典上解释接口时说系统中两个不同部分的链接的地方对吗 解决方案 你先要知道什么是接口,其次定义接口的作用,比如有一个类要实现好多方法,你不能让这个类继承所有的类去实现它里面的方法,因为java只支持单继承,当你用了接口以后,你可以在接口里面定义好那个类所需要的方法,然后让该类实现这个接口就可以,这样的话,就相当于你实现了一个类继承了多个类,而且在继承和接口中,还

在java中接口可以继承接口吗?

问题描述 在java中接口可以继承接口吗? 答案是可以,但是接口继承接口的意义何在? 我觉得接口最大的作用就是规范程序的结构,如果接口继承一个接口,这是要干嘛啊? 解决方案 不仅可以继承,还可以多继承.可以用来扩展功能啊,这样不用修改父借口,方便维护.体会过具体应用场景就明白了. 解决方案二: 接口可以多继承,,但类只能单继承,,多实现 解决方案三: 这得根据你的业务场景来说.接口的继承就像类的继承一样.继承父类或者父接口的方法或者参数.

匿名对象-java中接口,匿名类,实现这个接口类的方法

问题描述 java中接口,匿名类,实现这个接口类的方法 不能直接new一个接口,但是接口再被实现后,再new这个接口,并写上实现这个接口的方法,那么new的这个接口如果没有赋值引用,那么new的这个接口就是一个匿名类,这么理解对不 解决方案 没有名字的类就是匿名类,没有名字的对象就是匿名对象. 判断标准,你能不能说出类的名字.说不出肯定是匿名类. 解决方案二: 你看下这个文章 应该能理解了匿名类直接new接口 解决方案三: 利用匿名内部类实现Java接口方法java实现接口类Java面向对象 匿

JAVA中接口的回调是怎么一回事

问题描述 JAVA中接口的回调JAVA做参数是怎么一回事情书上说的很抽象 解决方案 解决方案二:http://www.blogjava.net/Carter0618/archive/2007/08/19/137936.html解决方案三:知道什么是抽象类不???解决方案四:接口做参数实际上是一种泛型,让程序更通用点跟用Object做参数有点像,你可以传String,Apple类都可以容器里面使用很广泛解决方案五:就是调用接口的实现类解决方案六:看一下马士兵的视频吧,会很有用的,就看他的javas

JAVA中接口的应用问题

问题描述 如题,最近刚刚开始学JAVA,学到接口时,有点疑问,书上说接口使用时(假设该接口名为Interface),先定义一个类(假设该类名为A),然后implements关键字来实现接口,并在该类中对接口的方法进行定义,构造对象时的格式为interfaceXXX=newA();这里我有个疑问,如果把interfaceXXX=newA();改成跟实例化对象一样:AXXX=newA();是不是也一样?如果不一样,对哪些方面会造成影响?谢谢 解决方案 解决方案二:将属性类型定义为接口,它的实现比较灵

Java中接口和抽象类的区别与相同之处_java

1. 抽象类: (1).概念:抽象类是对一种事物的抽象,即对类抽..抽象类是对整个类整体进行抽象,包括属性.行为.Java抽象类和Java接口一样,都用来声明一个新的类型.并且作为一个类型的等级结构的起点. (2).格式: 复制代码 代码如下:    public abstract class abstractDemo{             /**属性*/             private String name;             /**方法*/             pub