JAVA | 11
来源:互联网 发布:军绿色外套 淘宝 编辑:程序博客网 时间:2024/06/16 14:06
接口
JAVA 中接口的主要作用是解决单继承局限问题。
接口由全局常量和抽象方法组成。
package com.company;interface A{ public abstract void funA();}interface B{ public abstract void funB();}interface C extends A,B{ public abstract void funC();}class D implements C{ public void funA(){ System.out.println("A"); } public void funB(){ System.out.println("B"); } public void funC(){ System.out.println("C"); }} public class Main { public static void main(String[] args) { C c = new D(); c.funA(); c.funB(); c.funC(); }}
package com.company;interface USB{ void start(); void stop();}class Computer{ public void plugin(USB usb){ usb.start(); usb.stop(); }}class UDisk implements USB{ public void start() { System.out.println("U Disk begin working"); } public void stop() { System.out.println("U Disk stop working"); }}class Printer implements USB{ public void start() { System.out.println("Printer begin working"); } public void stop() { System.out.println("Printer stop working"); }}public class Main { public static void main(String[] args) { Computer computer = new Computer(); USB uDisk = new UDisk(); USB printer = new Printer(); computer.plugin(uDisk); computer.plugin(printer); }}
package com.company;interface Fruit{ void eat();}class Apple implements Fruit{ public void eat(){ System.out.println("eat apple"); }}class Orange implements Fruit{ public void eat(){ System.out.println("eat orange"); }}class Factory{ public static Fruit getInstance(String className){ if("apple".equals(className)){ return new Apple(); } else if("orange".equals(className)){ return new Orange(); } else { return null; } }}public class Main { public static void main(String[] args) { Fruit fruit = Factory.getInstance("apple"); fruit.eat(); }}
package com.company;interface Subject{ void make();}class RealSubject implements Subject{ public void make(){ System.out.println("making"); }}class ProxySubject implements Subject{ private Subject subject; public ProxySubject(Subject subject){ this.subject = subject; } public void make(){ this.prepare(); this.subject.make(); this.destroy(); } public void prepare(){ System.out.println("preparing"); } public void destroy(){ System.out.println("destroying"); }}public class Main { public static void main(String[] args) { Subject subject = new ProxySubject(new RealSubject()); subject.make(); }}
阅读全文
0 0
- Java 11
- JAVA | 11
- Java咖啡馆(11):Java插件技术
- java 高新技术【11】 java 代理类
- java 高新技术【11】 java 代理类
- 11 java 王少飞-java网络编程小节
- 11 java 王少飞-Java SE 加强小节
- java基础知识11-java运行时
- 【JAVA】【NIO】11、Java NIO DatagramChannel
- 【java基础 11】java集合框架学习
- RoyalAjax(11)------TestObject.java
- Java学习笔记11
- Thinking in java-11
- java基础知识总结(11)
- java基础问题11
- java学习(11)
- Java 笔记11
- 11 java 王少飞-Cookie
- DISPATCH_SOURCE_TYPE_TIMER那些容易坑的点
- java经典问题——生兔子
- 搭建ssm框架遇到的问题:The request sent by the client was syntactically incorrect
- Re-ID: Learning Deep Feature Representation with Domain Guided Dropout for Person Re-identifiation
- Java生成图片验证码
- JAVA | 11
- WIN7下安装Tensorflow
- React 组件通信
- 【HDU】 1213
- Java练习题14 教师研究生工资
- 音频常用的音频格式
- 用Condtruct2 制作游戏2
- HashMap、LinkedHashMap、TreeMap、HashTable、ConcurrentHashMap原理解析
- java中的快速失败(fail-fast)与安全失败(fail-safe)