java学习笔记——接口
2015-08-06 00:37
375 查看
——Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ——-
接口
在抽象类中,只有抽象方法,针对这种情况,java就提供了一种更加抽象的表现形式:接口 类用class表示,接口用interface。
格式
使用interface来定义一个接口。接口定义同类的定义类似,也是分为接口的声明和接口体,其中接口体由常量定义和方法定义两部分组成。定义接口的基本格式如下:
与Java的类文件一样,接口文件的文件名必须与接口名相同。
实现接口
接口在定义后,就可以在类中实现该接口。在类中实现接口可以使用关键字 implements,其基本格式如下:
[修饰符] class <类名> [extends 父类名] [implements 接口列表]{
}
接口的特点
接口不能被实例化
实现类要不是抽象类,要不重写接口里面所有的方法。
接口中成员特点
接口只有常量,因为接口中的常量有默认修饰符: public static final 推荐:永远自己给出修饰符。
接口是没有构造方法。因为接口不需要给成员变量初始化。
接口中的方法都是抽象的。如果不写abstract,系统会默认加上abstract和public。因为接口中有默认修饰符,public abstract。
类与接口的关系
类与类
继承关系,并且只能单继承
接口与类,
实现关系,支持单实现,也支持多实现,中间用,隔开
接口与接口
继承关系,可以单继承,可以多继承。
关键字的作用
private
1 修饰成员,被它修饰的成员只能在本类中访问,外界类想要访问的话只能通过公共的方法(即使有继承关系也不能直接访问)
2 可以修饰构造方法.(不想让外界通过new关键字创建这个类的对象)
this
用在普通方法中this.变量名表示调用本类中成员变量
用在构造方法中 格式 this(参数) 表示调用本类中其他的构造方法
this用在构造方法中必须是写在第一行有效代码处
super
用在普通方法中super.变量名表示调用父类中成员变量
用在构造方法中 格式 super(参数) 表示调用父类构造方法
super用在构造方法中必须是写在第一行有效代码处
static 修饰成员
被它修饰的成员 1 随着类的加载而加载 2 可以直接使用类名.成员名调用 3被它修饰的变量被本类中所有对象所共享.
静态的方法只能调用静态成员
被staic修饰的方法中是没有this关键字的
被static修饰的方法里面是没有super的。
final
修饰成员变量,变成常量
修饰成员方法,方法不能被重写
修饰类,该类不能被继承
abstract 抽象关键字
修饰类表示是抽象类
修饰方法表示这个方法是抽象方法
abstract关键字不能和final.static.private共存
interface
用来定义接口的关键字
extends
用来表示两个类或两个接口是继承关系
implements
表示类与接口直接是实现关系
接口
在抽象类中,只有抽象方法,针对这种情况,java就提供了一种更加抽象的表现形式:接口 类用class表示,接口用interface。
格式
使用interface来定义一个接口。接口定义同类的定义类似,也是分为接口的声明和接口体,其中接口体由常量定义和方法定义两部分组成。定义接口的基本格式如下:
[修饰符] interface 接口名 [extends 父接口名列表]{ [public] [static] [final] 常量; [public] [abstract] 方法; }
与Java的类文件一样,接口文件的文件名必须与接口名相同。
实现接口
接口在定义后,就可以在类中实现该接口。在类中实现接口可以使用关键字 implements,其基本格式如下:
[修饰符] class <类名> [extends 父类名] [implements 接口列表]{
}
接口的特点
接口不能被实例化
实现类要不是抽象类,要不重写接口里面所有的方法。
接口中成员特点
接口只有常量,因为接口中的常量有默认修饰符: public static final 推荐:永远自己给出修饰符。
接口是没有构造方法。因为接口不需要给成员变量初始化。
接口中的方法都是抽象的。如果不写abstract,系统会默认加上abstract和public。因为接口中有默认修饰符,public abstract。
类与接口的关系
类与类
继承关系,并且只能单继承
接口与类,
实现关系,支持单实现,也支持多实现,中间用,隔开
接口与接口
继承关系,可以单继承,可以多继承。
关键字的作用
private
1 修饰成员,被它修饰的成员只能在本类中访问,外界类想要访问的话只能通过公共的方法(即使有继承关系也不能直接访问)
2 可以修饰构造方法.(不想让外界通过new关键字创建这个类的对象)
this
用在普通方法中this.变量名表示调用本类中成员变量
用在构造方法中 格式 this(参数) 表示调用本类中其他的构造方法
this用在构造方法中必须是写在第一行有效代码处
super
用在普通方法中super.变量名表示调用父类中成员变量
用在构造方法中 格式 super(参数) 表示调用父类构造方法
super用在构造方法中必须是写在第一行有效代码处
static 修饰成员
被它修饰的成员 1 随着类的加载而加载 2 可以直接使用类名.成员名调用 3被它修饰的变量被本类中所有对象所共享.
静态的方法只能调用静态成员
被staic修饰的方法中是没有this关键字的
被static修饰的方法里面是没有super的。
final
修饰成员变量,变成常量
修饰成员方法,方法不能被重写
修饰类,该类不能被继承
abstract 抽象关键字
修饰类表示是抽象类
修饰方法表示这个方法是抽象方法
abstract关键字不能和final.static.private共存
interface
用来定义接口的关键字
extends
用来表示两个类或两个接口是继承关系
implements
表示类与接口直接是实现关系
相关文章推荐
- Android studio快捷键大全 和 eclipse对照(原)
- Spring 数据源配置二:多数据源
- java学习笔记——抽象 abstract
- springMVC各个包的详细说明
- java学习笔记——static关键字
- spring mvc 返回页面乱码
- Java的访问控制
- Java-Properties用法-入门
- Spring 数据源配置一:单一数据源
- maven项目下myeclipse 下找不到或无法加载主类的解决办法
- Java WebService
- windows下的hadoop-eclipse-plugin-2.6.0.jar配置问题
- 使用Eclipse构建Maven项目 (step-by-step)
- springmvc+spring+mybatis 简单搭建
- Java虚拟机结构及常见内存溢出异常
- Java日志
- eclipseRCP深入浅出(学习总结)2015.08.05
- Android 与 JDK 下查找包下的类
- Java内部类的作用
- Java中的一些常见类System、Runtime、Date与Carendar