ミシェル・コルッチは1944年10月28日にパリ14区のノートルダム＝ド＝ボン＝スクール病院で生まれた。モネットと呼ばれた母親のシモーヌ・ブイエは、モンパルナス通りの花屋ボーマンに勤めていた。父親のオノリオ・コルッチはイタリアのラツィオ州の出身で、朝市で八百屋を営んでいた。1947年に父が31歳で急性灰白髄炎により死去すると、モネットは女手一つで2人の子供を育てることになり、さらに夫の家族に見放されると（義母のマリアだけはたまに顔を見せたが）、モネットとミシェル、そして一歳半年上の姉のダニエルは、一部屋と台所だけの狭い家に住んだ。モネットは子育てのために花屋の仕事を続けることができなくなったが、それでもなおパートの仕事をかけもちするなどしてどうにかやりくりしていた。ところが、やがて脊柱側彎症を患い、治療のため二人の子供を連れてパ＝ド＝カレー県のベルクに引っ越さざるを得なくなった。このような困難な状況にもかかわらず、モネットは子供たちの将来に希望を託し、特に子供たちの服装に気を配ることで体裁を繕おうとした。ミシェルはこうした母親の見栄っ張りが嫌だったし、近所の子供たちと違う、立派な服を着せられると、女の子のような服を着せないでくれと文句を言っていた。ミシェルはパリ南部郊外モンルージュの小学校へ入学した。勉強には興味がなかったが、教師に逆らい、級友を笑わせるのが得意だった。学業は初等教育修了（CEP）までしか受けなかった。ところが彼は1958年6月のこの試験すら不合格だったと話していた。試験当日、午前中のディクテ（聞き取り試験）で間違いは一つだけだったので、これで自分の力を証明することができたと（勝手に）判断し、午後の試験をさぼったからだと言う。ただし、母親によると、彼は確かにこの試験に合格しており、彼が間違ったという箇所については、自宅で10回くらい練習していた箇所だから間違うはずがないと話している。そのうち級友と不良グループを作って町内で次々と小さな非行を働くようになり、度々警察の厄介になった。反省を促される機会になったのは、ある日、年老いた女性のバッグをひったくろうとしたところを通行人に阻止されたことだった。コルーシュが15歳のときのことだが、以後、このような不良時代を恥ずべきことと思っていたコルーシュは、この出来事についても長年、語ることができなかった。母親は息子のこのような振る舞いに腹を立て、息子の将来を案じるようになった。ミシェルは仕事も長く続かず、電報局員、陶器職人、カフェのギャルソン、本屋の店員、写真家の見習い、薬局の調剤師の助手、観光客向けの街頭写真屋、消防団員、八百屋や花屋の店員などの職を転々とした。この間、彼は音楽に興味を持つようになった。同時代の多くの若者と同様に、ロックンロールが好きで、ビートルズ、ジョニー・アリディ、レ・ショセット・ノワール、エルヴィス・プレスリーのファンだった。また、ジョルジュ・ブラッサンスなども好きだった。21歳の誕生日に母親から500フランの小切手をもらったときは、早速、楽器屋へ行ってギターを買った。ただし、ギターを習ったことは一度もなく、自己流で弾いていた。
以下の Java コードは、ロギングクラスの例を用いてこのパターンを示したものである。各ロギングハンドラーはログレベルで何らかのアクションを起こすべきかどうかを判断し、次のロギングハンドラーにメッセージを渡す。出力：  Writing to debug output: Entering function y.  Writing to debug output: Step1 completed.  Sending via e-mail:      Step1 completed.  Writing to debug output: An error has occurred.  Sending via e-mail:      An error has occurred.  Writing to stderr:       An error has occurred.この例はロギングクラスをこの方法で書くことを推奨するものではなく、また、CoR の「純粋な」実装では、ロガーがメッセージを処理した後に、その責任を後段に渡すことはない。この例では処理されるかどうかに関係なく、メッセージがチェーンの先に渡される。import java.util.*;abstract class Logger {    public static final int ERROR = 3;    public static final int NOTICE = 5;    public static final int DEBUG = 7;    private final int mask;    protected Logger(int mask) { this.mask = mask; }    // The next element in the chain of responsibility    protected Logger next;    public Logger setNext(Logger l) {        next = l;        return this;    }    public void message(String msg, int priority) {        if (priority <= mask) {            writeMessage(msg);            if (next != null) {                next.message(msg, priority);            }        }    }        abstract protected void writeMessage(String msg);}class StdoutLogger extends Logger {    public StdoutLogger(int mask) { super(mask); }    @Override    protected void writeMessage(String msg) {        System.out.println("Writting to stdout: " + msg);    }}class EmailLogger extends Logger {    public EmailLogger(int mask) { super(mask); }    @Override    protected void writeMessage(String msg) {        System.out.println("Sending via email: " + msg);    }}class StderrLogger extends Logger {    public StderrLogger(int mask) { super(mask); }    @Override    protected void writeMessage(String msg) {        System.out.println("Sending to stderr: " + msg);    }}public class ChainOfResponsibilityExample {    public static void main(String[] args) {        // Build the chain of responsibility        final Logger l =            new StdoutLogger(Logger.DEBUG).setNext(            new EmailLogger(Logger.NOTICE).setNext(            new StderrLogger(Logger.ERROR)));        // Handled by StdoutLogger        l.message("Entering function y.", Logger.DEBUG);        // Handled by StdoutLogger and EmailLogger        l.message("Step1 completed.", Logger.NOTICE);        // Handled by all three loggers        l.message("An error has occurred.", Logger.ERROR);    }}