《第一行代码Java》接口部分学习笔记与代码
2018-02-06 11:21
302 查看
1.基本概念
接口定义:如果一个类只是由抽象方法和全局常量组成,将其定义为接口
接口对象本身和抽象类类似,自己不能使用new关键字实例化,接口必须有子类它的子类可以使用implement关键字实现多个接口
,接口的子类(如果不是抽象类)必须覆写接口中全部抽象方法,接口对象可以利用对象的向上转型进行实例化操作
.如果一个子类要继承抽象类又实现接口,那么应该采用先继承(extends)后实现接口(implements)的顺序完成
.一个抽象类可以继承一个抽象类或者实现若干个接口,但是反过来,一个接口却不能继承抽象类,但是一个接口可以
通过extends关键字同时继承多个接口
在整个Java中,接口主要用于解决单继承的问题
2.接口的实际应用——标准
package org.java.interfacetest;
/**
*
* 先给需要使用该接口的定义一个接口名称以及具体标准
* 该类中定义接口名称
* 所有还接口的子类去实现该接口的所有方法
* @author coder
*
*/
interface USB{ //定义标准一定是接口
public void start();//usb设备开始工作
public void stop();//usb设备停止工作
}
class Computer{
public void plugin(USB usb){ //插入USB接口对象,(子类对象)
usb.start();
usb.stop();
}
}
class Falsh implements USB{
@Override
public void start() {
// TODO Auto-generated method stub
System.out.println("U盘开始工作");
}
@Override
public void stop() {
// TODO Auto-generated method stub
System.out.println("U盘停止使用");
}
}
class Print implements USB{
@Override
public void start() {
// TODO Auto-generated method stub
System.out.println("打印机开始工作");
}
@Override
public void stop() {
// TODO Auto-generated method stub
System.out.println("打印机停止使用");
}
}
public class InterfaceTest{
public static void main(String[] args) {
Computer computer=new Computer();
computer.plugin(new Falsh());
computer.plugin(new Print());
}
}
/*
U盘开始工作
U盘停止使用
打印机开始工作
打印机停止使用*/
接口定义:如果一个类只是由抽象方法和全局常量组成,将其定义为接口
接口对象本身和抽象类类似,自己不能使用new关键字实例化,接口必须有子类它的子类可以使用implement关键字实现多个接口
,接口的子类(如果不是抽象类)必须覆写接口中全部抽象方法,接口对象可以利用对象的向上转型进行实例化操作
.如果一个子类要继承抽象类又实现接口,那么应该采用先继承(extends)后实现接口(implements)的顺序完成
.一个抽象类可以继承一个抽象类或者实现若干个接口,但是反过来,一个接口却不能继承抽象类,但是一个接口可以
通过extends关键字同时继承多个接口
在整个Java中,接口主要用于解决单继承的问题
2.接口的实际应用——标准
package org.java.interfacetest;
/**
*
* 先给需要使用该接口的定义一个接口名称以及具体标准
* 该类中定义接口名称
* 所有还接口的子类去实现该接口的所有方法
* @author coder
*
*/
interface USB{ //定义标准一定是接口
public void start();//usb设备开始工作
public void stop();//usb设备停止工作
}
class Computer{
public void plugin(USB usb){ //插入USB接口对象,(子类对象)
usb.start();
usb.stop();
}
}
class Falsh implements USB{
@Override
public void start() {
// TODO Auto-generated method stub
System.out.println("U盘开始工作");
}
@Override
public void stop() {
// TODO Auto-generated method stub
System.out.println("U盘停止使用");
}
}
class Print implements USB{
@Override
public void start() {
// TODO Auto-generated method stub
System.out.println("打印机开始工作");
}
@Override
public void stop() {
// TODO Auto-generated method stub
System.out.println("打印机停止使用");
}
}
public class InterfaceTest{
public static void main(String[] args) {
Computer computer=new Computer();
computer.plugin(new Falsh());
computer.plugin(new Print());
}
}
/*
U盘开始工作
U盘停止使用
打印机开始工作
打印机停止使用*/
相关文章推荐
- 《第一行代码Java》引用传递部分学习笔记与代码
- 《第一行代码Java》接口实现工厂模式学习笔记与代码
- 《第一行代码Java》DAO设计模式部分学习笔记与代码
- 《第一行代码Java》数组与String部分学习笔记与代码
- 《第一行代码Java》数据表与简单Java类映射部分学习笔记与代码
- 《第一行代码Java》Java类集框架部分学习笔记与代码
- [学习笔记] KEIL 下保护部分代码方法。
- OC学习笔记八 类2(代码部分)
- [文件系统]文件系统学习笔记(十一)——部分代码详解
- Android(java)学习笔记229:服务(service)之绑定服务调用服务里面的方法 (采用接口隐藏代码内部实现)
- 《第一行代码Java》接口实现代理设计模式(Proxy)笔记与代码
- 徐雷鸣书中MFlood部分测试代码学习笔记
- 代码风格学习笔记--引子
- Java基础学习笔记 第二部分 part 1
- 一步一步学习sharepoint2010 workflow 系列第二部分:sharepoint无代码工作流 第4章 SharePoint Designer工作流中的任务处理(Task processing in SPD )
- GCC-3.4.6源代码学习笔记(144)
- 学习笔记 --- LINNUX 使用异步通讯机制实现按键驱动代码分析
- JavaScript数组操作学习部分笔记
- Java学习笔记-接口和抽象类
- GCC-3.4.6源代码学习笔记(24)