java接口的一些小知识
2016-10-13 18:14
239 查看
接口:接口的修饰符只能是public或者默认不写,接口中只有抽象方法,没有具体的实现publicvoid method();接口中的成员只能是final(即常量!),而且只能是public或者没有修饰符的。接口中的方法,如果没有修饰符修饰,默认是public方法,而且也只能是public方法,这个要特别注意的。不能用new +接口名接口是一个特殊的抽象类,它没有变量和方法实现[修饰符]interface 接口名 [extends 父接口名列表]{[public] [static] [final] 常量;[public] [abstract] 方法;}。extends父接口名列表:可选参数,用于指定要定义的接口继承于哪个父接口。1.问题:能不能用接口来定义一个对象?答案:是可以的见例子
public interface Wu { public void run(); } //实现了Wu接口 public class ArrayWu implements Wu { public void run() { System.out.println("ArrayWu实现的run方法!"); } } //测试 public class test11 { public static void main(String[] args) { Wu wuexmp = new ArrayWu(); wuexmp.run(); } }这里定义的接口是自定义的Wu接口,然后
<span style="font-size:14px;">Wu wuexmp = new ArrayWu();</span>
<span style="font-size:14px;">是将类创建的对象给了接口这个是允许的,对象的引用可以是以接口,但是对象不能是一个接口类型,必须是接口类型的实现类。</span>
<span style="font-size:14px;">一个类里面的定义对象可以是接口类型,但不能是接口的实例。因为接口不能实例化,它是一个残类。</span>2.问题java接口中可以定义类吗?答案:
可以定义,也不仅限于抽象类。只是接口本身不能被实例化,接口内部的类是可以实例化的。 调用接口的内部类有两种方法: 1.接口名.类名 2.创建实现类implements接口,再直接实例化内部类
public interface Test{ class A{ public int a=1; } } -- public class Program { public static void main(String[] args) { Test.A a = new Test.A(); System.out.println(a.a); new B().method(); } } class B implements Test{ void method(){ System.out.println(new A().a); } }
3.类里面定义接口,内部接口。一般没方法,大多数情况都是只定义一些常量。缺省是static的,外部类可以调用该接口。(极少参考Thinking in Java)但是呢,就是普通的类里面的内部类或者抽象类都不怎么会用的更别说接口的了,所以这个不必掌握。
相关文章推荐
- java内接口,抽象类,继承实现的一些基础知识和实例
- java新手必读,一些入门知识
- 【转载】java新手必读,一些入门知识
- 一些java的基础知识
- Java Collection框架:你可能不知道的一些小知识
- 一些有意思Java知识
- 一些java入门知识
- JAVA中容易混淆的一些小知识
- JAVA基础知识: 对synchronized(this)的一些理解
- JAVA的一些常用基础知识点
- Java入门--一些JAVA相关的基础知识
- java的一些基础知识(引用BlogJava 落花飞雪)
- JAVA的一些基本知识
- java新手必读,一些入门知识。
- 关于java的一些基础知识和经验
- Java的一些基础知识
- 学Java前要了解的一些基础知识
- 一些java知识
- 学好Java必须掌握的一些必备知识
- JAVA 接口知识