Java之接口与内部类6.1.1
2017-04-05 00:00
309 查看
摘要: 接口
package com.aowin.define;
//接口是定义一个合约
//接口也是一种数据类型
//定义接口使用interface关键字
/*
* public interface 接口名称{}
* 接口中的成员变量均为public static final的
* 接口中的方法均为公共抽象的,public abstract,abstract修饰的方法没有方法体
*
* public interface 接口名称 extends 接口1,接口2...{}
* 接口可以继承别的接口使用extends关键字,而且接口的继承是多继承,这一点可以弥补类是单继承的缺陷 *
*/
//接口可以声明引用变量,但不能直接new创建对象
//类实现接口使用implements关键字,然后创建实现类的对象
//类实现接口是多实现的,implements接多个接口名称,之间用,隔开
/*
* class 类名 implements 接口1,接口2....{}
* 类中要为所有接口的抽象方法提供具体实现
*
* abstract class 类名 implements 接口1,接口2...{}
* 抽象类不必为所有的抽象方法提供具体实现
*
*/
//接口也可以使用多态
public interface Usbable {
//成员
public static final int I=100;
double PI=3.14; //public static final可以省略不写
//方法
public abstract void read();
void write(); //public abstract可以省略不写
}
package com.aowin.define;
public class Test {
public static void main(String[] args) {
Usbable usb1;
//usb1 = new Usbable();
usb1 = new Keyboard("dell",50.0);
usb1.read();
Usbable usb2 = new Mouse();
usb2.read();
Usbable[] arr = {usb1,usb2,new Mouse()};
}
}
package com.aowin.define;
public interface Aable {
void a();
}
package com.aowin.define;
public interface Bable {
void b();
}
package com.aowin.define;
public interface Cable extends Aable,Bable{
}
package com.aowin.define;
public class Keyboard implements Usbable{
private String brand;
private double price;
public Keyboard(String brand, double price) {
super();
this.brand = brand;
this.price = price;
}
public String getBrand() {
return brand;
}
public void setBrand(String brand) {
this.brand = brand;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
&
7fe0
nbsp; @Override
public void read() {
System.out.println("读取键盘字符...");
}
@Override
public void write() {
// TODO Auto-generated method stub
}
}
package com.aowin.define;
public class Mouse extends Object implements Usbable, Cable{
@Override
public void a() {
// TODO Auto-generated method stub
}
@Override
public void b() {
// TODO Auto-generated method stub
}
@Override
public void read() {
System.out.println("读取鼠标光标位置...");
System.out.println("PI="+PI);
}
@Override
public void write() {
// TODO Auto-generated method stub
}
}
package com.aowin.define;
//接口是定义一个合约
//接口也是一种数据类型
//定义接口使用interface关键字
/*
* public interface 接口名称{}
* 接口中的成员变量均为public static final的
* 接口中的方法均为公共抽象的,public abstract,abstract修饰的方法没有方法体
*
* public interface 接口名称 extends 接口1,接口2...{}
* 接口可以继承别的接口使用extends关键字,而且接口的继承是多继承,这一点可以弥补类是单继承的缺陷 *
*/
//接口可以声明引用变量,但不能直接new创建对象
//类实现接口使用implements关键字,然后创建实现类的对象
//类实现接口是多实现的,implements接多个接口名称,之间用,隔开
/*
* class 类名 implements 接口1,接口2....{}
* 类中要为所有接口的抽象方法提供具体实现
*
* abstract class 类名 implements 接口1,接口2...{}
* 抽象类不必为所有的抽象方法提供具体实现
*
*/
//接口也可以使用多态
public interface Usbable {
//成员
public static final int I=100;
double PI=3.14; //public static final可以省略不写
//方法
public abstract void read();
void write(); //public abstract可以省略不写
}
package com.aowin.define;
public class Test {
public static void main(String[] args) {
Usbable usb1;
//usb1 = new Usbable();
usb1 = new Keyboard("dell",50.0);
usb1.read();
Usbable usb2 = new Mouse();
usb2.read();
Usbable[] arr = {usb1,usb2,new Mouse()};
}
}
package com.aowin.define;
public interface Aable {
void a();
}
package com.aowin.define;
public interface Bable {
void b();
}
package com.aowin.define;
public interface Cable extends Aable,Bable{
}
package com.aowin.define;
public class Keyboard implements Usbable{
private String brand;
private double price;
public Keyboard(String brand, double price) {
super();
this.brand = brand;
this.price = price;
}
public String getBrand() {
return brand;
}
public void setBrand(String brand) {
this.brand = brand;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
&
7fe0
nbsp; @Override
public void read() {
System.out.println("读取键盘字符...");
}
@Override
public void write() {
// TODO Auto-generated method stub
}
}
package com.aowin.define;
public class Mouse extends Object implements Usbable, Cable{
@Override
public void a() {
// TODO Auto-generated method stub
}
@Override
public void b() {
// TODO Auto-generated method stub
}
@Override
public void read() {
System.out.println("读取鼠标光标位置...");
System.out.println("PI="+PI);
}
@Override
public void write() {
// TODO Auto-generated method stub
}
}
相关文章推荐
- java在内部类中实现接口
- Think in java 第八章 多态 第九章 接口 第十章 内部类
- Java__内部类,抽象类,继承,接口,异常的处理...等
- Java学习笔记(4):接口与内部类
- 匿名内部类是否可以继承其它类是否可以实现接口 _JAVA面试题及答案
- JAVA的思考(关于接口,抽像类,内部类)
- Java基础之面向对象(抽象类、接口、内部类)
- Java学习_0712接口、抽象类内部类,继承
- C\C++ 程序员从零开始学习Android - 个人学习笔记(八) - java基础 - 继承、抽象类、接口、内部类(待续)
- Java学习笔记004——接口、克隆、回调、内部类
- java中的抽象类,接口,内部类
- Java之接口,抽象类,内部类
- JAVA学习4——内部类实现接口 未完成
- Java__内部类,抽象类,继承,接口,异常的处理...等
- Java核心技术:卷1笔记[4] 接口和内部类
- java中用内部类实现监听接口例程
- JAVA学习4——内部类实现接口 未完成
- java学习 接口派生 内部类实现接口 暑假第七天
- Java学习笔记(接口与内部类)
- java 接口和内部类