IOC模式 Type3(构造子注入)

原创 2006年06月09日 15:27:00

使用轻量级容器PicoContainer来实现IOC(Inversion of Control也叫Dependency Injection)模式的Type3
简单应用实例

public interface Fruit {
    void eat(Object eater);
}

public class Apple implements Fruit {
 public void eat(Object eater) {
  System.out.println("I'm Apple, eaten by "+eater);
 }

}

public class Monkey {
    Fruit fruit;

    public Monkey(Fruit fruit) {
        this.fruit = fruit;
    }
    public void eatFruit() {
        fruit.eat(this);
    }
 public String toString() {
  // TODO Auto-generated method stub
  return this.getClass().getName();
 }
   
}

public class PicocontainerTest {

 /**
  * @param args
  */
 public static void main(String[] args) {
  // TODO Auto-generated method stub
  MutablePicoContainer pico = new DefaultPicoContainer();
  pico.registerComponentImplementation(Monkey.class);
  pico.registerComponentImplementation(Apple.class);
  Monkey monkey = (Monkey) pico.getComponentInstance(Monkey.class);
  monkey.eatFruit();
 }

}

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

jquery.cookie.js 1.4.1

很难下载了, 算是留底吧。 /*! * jQuery Cookie Plugin v1.4.1 * https://github.com/carhartl/jquery-cookie * *...

MVC+IOC框架下基于构造器注入的原理分析

有不少人可能会认为,如果抽象工厂模式再加上反射的话,跟IOC容器非常类似。但实际不是这样,IOC有两个特性,控制反转和依赖注入,两者其相辅相成,密不可分, 这两点工厂模式都没有做到,我们依然要通过手...

Spring IOC注入(二)构造器注入

上一篇写了IOC注入方法中的set方法,这一篇就说一下基于构造器的注入~ 基于构造器注入的方式: 配置元素 注意:在Bean中不用写set方法,但是要有相应的构造器 构造器注入有俩种形式 ,一个是根据...

RxBus封装(IOC+动态代理设计模式) — 像EventBus3,otto一样优雅

RxBus封装(IOC+动态代理设计模式) — 像EventBus3,otto一样优雅本文将通过封装RxJava实现像EventBus3或者otto注解的方式进行消息传递 :最近在使用RxBus的时候...
  • hfyd_
  • hfyd_
  • 2016-12-02 21:30
  • 2330

spring Ioc 依赖注入的三种方式:构造函数注入、setter方法注入和接口注入

BeanFactory作为一个IoC Service Provider,为了能够明确管理各个业务对象以及业务对象之间的依赖绑定关系,同样需要某种途径来记录和管理这些信息。通常会有三种方式来管理这些信息...

Spring IOC三种注入方式(接口注入、setter注入、构造器注入)

IOC ,全称 (Inverse Of Control) ,中文意思为:控制反转, Spring 框架的核心基于控制反转原理。 什么是控制反转? 控制反转是一种将组件依赖关系的创建和管理置于程序外部...

Spring容器框架、spring ioc、两种注入方法set注入与构造器注入

#1>spring是什么? spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架 ——从大小与开销两方面而言Spring都是轻量的 ——通过控制反转(IOC)的技术达到松耦合...

Spring3注入类型(Injection Type)

注入类型分为三种: a)     setter(常用) package com.bebig.service; import com.bebig.dao.UserDAO; import com.b...

仅需6步,教你轻易撕掉app开发框架的神秘面纱(3):构造具有个人特色的MVP模式

之前我们说过MVP模式最大的问题在于:每写一个Activity/Fragment需要写4个对应的文件,对于一个简易的app框架来说太麻烦了。所以我们需要对MVP进行一定的简化。 关于MVP模式介绍,...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)