例子1
package com.atguigu.java1;
public class InterfaceTest {
public static void main(String[] args) {
System.out.println(Flyable.MAX_SPEED);
System.out.println(Flyable.MIN_SPEED);
}
}
interface Flyable{
public static final int MAX_SPEED = 7900;
int MIN_SPEED = 1;
public abstract void fly();
void stop();
}
例子2
package com.atguigu.java1;
public class InterfaceTest {
public static void main(String[] args) {
System.out.println(Flyable.MAX_SPEED);
System.out.println(Flyable.MIN_SPEED);
Plane plane = new Plane();
plane.fly();
plane.stop();
}
}
interface Flyable{
public static final int MAX_SPEED = 7900;
int MIN_SPEED = 1;
public abstract void fly();
void stop();
}
class Plane implements Flyable{
public void fly() {
System.out.println("通过引擎起飞");
}
public void stop() {
System.out.println("驾驶员减速停止");
}
}
例子3
package com.atguigu.java1;
public class InterfaceTest {
public static void main(String[] args) {
System.out.println(Flyable.MAX_SPEED);
System.out.println(Flyable.MIN_SPEED);
Plane plane = new Plane();
plane.fly();
plane.stop();
}
}
interface Flyable{
public static final int MAX_SPEED = 7900;
int MIN_SPEED = 1;
public abstract void fly();
void stop();
}
interface Attackable{
public abstract void attack();
}
class Plane implements Flyable{
public void fly() {
System.out.println("通过引擎起飞");
}
public void stop() {
System.out.println("驾驶员减速停止");
}
}
class Bullet implements Flyable,Attackable{
public void fly() {
}
public void stop() {
}
public void attack() {
}
}
例子4
package com.atguigu.java1;
public class InterfaceTest {
public static void main(String[] args) {
System.out.println(Flyable.MAX_SPEED);
System.out.println(Flyable.MIN_SPEED);
Plane plane = new Plane();
plane.fly();
plane.stop();
}
}
interface Flyable{
public static final int MAX_SPEED = 7900;
int MIN_SPEED = 1;
public abstract void fly();
void stop();
}
interface Attackable{
public abstract void attack();
}
class Plane implements Flyable{
public void fly() {
System.out.println("通过引擎起飞");
}
public void stop() {
System.out.println("驾驶员减速停止");
}
}
class Bullet extends Object implements Flyable,Attackable,CC{
public void fly() {
}
public void stop() {
}
public void attack() {
}
public void method1() {
}
public void method2() {
}
}
interface AA{
void method1();
}
interface BB{
void method2();
}
interface CC extends AA,BB{
}
例子5
package com.atguigu.java1;
public class UBSTest {
public static void main(String[] args) {
Computer com = new Computer();
Flash flash = new Flash();
com.transferDate(flash);
com.transferDate(new Printer());
USB phone = new USB(){
public void start() {
System.out.println("手机开始工作");
}
public void stop() {
System.out.println("手机结束工作");
}
};
com.transferDate(phone);
com.transferDate(new USB(){
public void start() {
System.out.println("mp3开始工作");
}
public void stop() {
System.out.println("mp3结束工作");
}
});
}
}
class Computer{
public void transferDate(USB usb){
usb.start();
System.out.println("具体传输数据的细节");
usb.stop();
}
}
interface USB{
void start();
void stop();
}
class Flash implements USB{
public void start() {
System.out.println("u盘开启工作");
}
public void stop() {
System.out.println("u盘结束工作");
}
}
class Printer implements USB{
public void start() {
System.out.println("打印机开启工作");
}
public void stop() {
System.out.println("打印机结束工作");
}
}
例子6
package com.atguigu.java1;
public class NetWorkTest {
public static void main(String[] args) {
Server server = new Server();
ProxyServer proxyServer = new ProxyServer(server);
proxyServer.browse();
}
}
interface NetWork{
public void browse();
}
class Server implements NetWork{
public void browse(){
System.out.println("真是的服务器访问网络");
}
}
class ProxyServer implements NetWork{
private NetWork work;
public ProxyServer(NetWork work){
this.work=work;
}
public void check(){
System.out.println("联网之前的检查工作");
}
public void browse() {
check();
work.browse();
}
}
例子7
CompareObject接口
package com.atguigu.exer3;
public interface CompareObject {
public int compareTo(Object o);
}
Circle类
package com.atguigu.exer3;
public class Circle {
private Double radius;
public Double getRadius() {
return radius;
}
public void setRadius(Double radius) {
this.radius = radius;
}
public Circle(Double radius) {
super();
this.radius = radius;
}
public Circle() {
super();
}
}
ComparableCircle类
package com.atguigu.exer3;
public class ComparableCircle extends Circle implements CompareObject{
public ComparableCircle(double radius){
super(radius);
}
public int compareTo(Object o) {
if(this == o){
return 0;
}
if(o instanceof ComparableCircle){
ComparableCircle c = (ComparableCircle)o;
return this.getRadius().compareTo(c.getRadius());
}else{
return 0;
}
}
}
comparableCircleTest测试类
package com.atguigu.exer3;
public class comparableCircleTest {
public static void main(String[] args) {
ComparableCircle c1 = new ComparableCircle(3.4);
ComparableCircle c2 = new ComparableCircle(3.6);
System.out.println(c1.compareTo(c2));
}
}
例子8
接口CompareA
package com.atguigu.java8;
public interface CompareA {
public static void method1(){
System.out.println("CompareA:北京");
}
public default void method2(){
System.out.println("CompareA: 上海");
}
default void method3(){
System.out.println("CompareA:上海");
}
}
SubClassTest类
package com.atguigu.java8;
public class SubClassTest {
public static void main(String[] args) {
SubClass s = new SubClass();
CompareA.method1();
}
}
class SubClass implements CompareA{
}
例子9
接口CompareA
package com.atguigu.java8;
public interface CompareA {
public static void method1(){
System.out.println("CompareA:北京");
}
public default void method2(){
System.out.println("CompareA: 上海");
}
default void method3(){
System.out.println("CompareA:上海");
}
}
SubClassTest类
package com.atguigu.java8;
public class SubClassTest {
public static void main(String[] args) {
SubClass s = new SubClass();
CompareA.method1();
s.method2();
s.method3();
}
}
class SubClass implements CompareA{
}
例子10
接口CompareA
package com.atguigu.java8;
public interface CompareA {
public static void method1(){
System.out.println("CompareA:北京");
}
public default void method2(){
System.out.println("CompareA: 上海");
}
default void method3(){
System.out.println("CompareA:上海");
}
}
SubClassTest类
package com.atguigu.java8;
public class SubClassTest {
public static void main(String[] args) {
SubClass s = new SubClass();
CompareA.method1();
s.method2();
s.method3();
}
}
class SubClass extends SuperClass implements CompareA{
public void method2(){
System.out.println("SubClass:上海");
}
}
SuperClass父类
package com.atguigu.java8;
public class SuperClass {
public void method3(){
System.out.println("SuperClass:wsf");
}
}
例子11
接口CompareA
package com.atguigu.java8;
public interface CompareA {
public static void method1(){
System.out.println("CompareA:北京");
}
public default void method2(){
System.out.println("CompareA: 上海");
}
default void method3(){
System.out.println("CompareA:上海");
}
}
SubClassTest类
package com.atguigu.java8;
public class SubClassTest {
public static void main(String[] args) {
SubClass s = new SubClass();
CompareA.method1();
s.method2();
s.method3();
}
}
class SubClass implements CompareA,CompareB{
public void method2(){
System.out.println("SubClass:上海");
}
public void method3(){
}
}
SuperClass父类
package com.atguigu.java8;
public class SuperClass {
public void method3(){
System.out.println("SuperClass:wsf");
}
}
CompareB类
package com.atguigu.java8;
public interface CompareB {
default void method3(){
System.out.println("CompareA:上海");
}
}
例子12
接口CompareA
package com.atguigu.java8;
public interface CompareA {
public static void method1(){
System.out.println("CompareA:北京");
}
public default void method2(){
System.out.println("CompareA: 上海");
}
default void method3(){
System.out.println("CompareA:上海");
}
}
SubClassTest类
package com.atguigu.java8;
public class SubClassTest {
public static void main(String[] args) {
SubClass s = new SubClass();
CompareA.method1();
s.method2();
s.method3();
s.myMethod();
}
}
class SubClass extends SuperClass implements CompareA,CompareB{
public void method2(){
System.out.println("SubClass:上海");
}
public void method3(){
System.out.println("SubClass: 深圳");
}
public void myMethod(){
method3();
super.method3();
CompareA.super.method3();
CompareB.super.method3();
}
}
SuperClass父类
package com.atguigu.java8;
public class SuperClass {
public void method3(){
System.out.println("SuperClass:wsf");
}
}
CompareB类
package com.atguigu.java8;
public interface CompareB {
default void method3(){
System.out.println("CompareA:上海");
}
}