java基础知识--接口语法细节

原创 2015年07月06日 23:02:01

0、接口必须是用public  abstract修饰,但是可以省略,省略也是public abstract的。

1、在定义类的时候,是可以有接口的,比如:Swimmer swimmer1 = new Shark();式中的Swimmer是一个接口,但是new后是不准有接口的,因为接口中只能有方法的描述,不能存在方法的定义(实现),在这个定义式中,用Swimmer接口的目的就是后续的操作能够更统一一些。

2、接口中的方法一定是公开且抽象(public abstract),且不能有实现,没有别的写法,只能是public abstract void methodName();为了方便,也可以省略public abstract:   void methodName(),编译程序会帮我们自动加上的。但是类中的abstract 方法不一定都是public的。并且类中的某个方法没有实现的话(没有双大括号)就无法编译,必须加上abstract修饰,这还不算完,这样的类也必须用abstract修饰。但是在子类中描述父类的abstract方法的时候可以没有@override关键字。

2.5、java中接口的成员变量必须是public final static修饰的,就是不加这些修饰符,也不会报错,因为编译器会为我们自动加上。

接口的所有成员都应该公开,所以是 public

接口不能实例化,所以只有静态成员: static
接口的成员一定应该是常量,所以是 final。


3.

interface Action {
	void execute();
}
class Some implements Action {
	 void execute() {
		// TODO Auto-generated method stub
		System.out.println("做一些");
	}
}
public class Main {
	public static void main(String[] strings){
		Action action = new Some();
		action.execute();
	}
}
这个程序是有问题的:

execute();方法是public的,只不过是没写出来而已,Some类implements之后变成了default的,访问级别变低了,这是不对的,Some中的execute()前面没有@override是没有问题的

4、在interface中可以定义常数。如:public static final int STOP = 0;  public static final int STAT = 1; public static final int UP = 2; public static final int DOWN = 3;这叫做枚举常数,事实上,在interface中也只能定义public static final的枚举常数,为了方便,也可写成

public interface Action{

int STOP = 0;

int RIGHT = 1;

......

编译程序自会帮我们展开。

5、接口之间也可以相互继承,关键字:extends

相关文章推荐

接口的基本语法

1.什么是接口? 定义了接口就是定义了调用对象的标准 2.接口的基本语法 interface USB { //抽象方法 public void read (); publi...

黑马程序员ava学习笔记——java语法基础知识

这一天的写的有点多,从java语言的组成一直写到函数,但基本上都是一点一点从平时手写的笔记上挑出来打上去的,不想把这一部分的内容拆开放到单独的一篇博客中,所以里边的代码就比较少,但个人感觉数组还是比较...

Java学习-基本语法+基础知识

1、Java源文件名必须与类名相同; 2、计算机系统中浮点数的值是近似的,对于1.1这个有理数,计算机只能够“近似的”将它表示出来而不能完全精确地表示出来。 3、逻辑运算符&&和&的区别:&&更智能,...

java基础知识记录--类相关语法 (摘自张孝祥整理java面试题)

1.请说出作用域public,private,protected,以及不写时的区别:  作用域       当前类      同一package    子孙类      其他package  publ...

java基础知识记录--基本语法 (摘自张孝祥整理java面试题)

1. 一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制?    可以有多个类,但只能有一个public的类,并且public的类名必须与文件名相一致。2. java有没有goto...

java基础知识之抽象类于接口

抽象类需要注意的几个点 抽象方法不能包含在非抽象类里,如果抽象父类的子类不能实现所有的抽象方法,那么子类也要声明为抽象类 抽象类是不能用new 操作符来初始化的,但是仍然可以定义它的构造方法,这个...

JAVA基础知识:抽象类、接口

首先,我主要参考的是这个:  http://blog.csdn.net/chenssy/article/details/12858267 里面的概念说的很详细了 1. 抽象类 出现的初衷: 这篇博...

java基础知识(2)抽象类和接口

通过许多方面的观察,最终得出的抽象类与接口的区别
  • Enless
  • Enless
  • 2015年12月19日 22:58
  • 177

Java基础知识 三 接口与内部类、代理

概述: 接口技术,主要用来描述类具有什么功能,而并不给出每个功能的具体实现。一个类可以实现一个或多个接口,并在需要接口的地方,随时使用实现了相应接口的对象。 克隆对象(深拷贝),指创建一个新对象,且新...

java内接口,抽象类,继承实现的一些基础知识和实例

本人初学者,写的小例子,有错误请指出,相互学习。 package com.yang.testAbstract; public class TestAbstractClassImplInterface...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:java基础知识--接口语法细节
举报原因:
原因补充:

(最多只允许输入30个字)