前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >You are My Sunshine

You are My Sunshine

作者头像
宅男潇涧
发布2018-08-01 15:21:56
4720
发布2018-08-01 15:21:56
举报
文章被收录于专栏:潇涧技术专栏潇涧技术专栏

代码小情诗《You are my sunshine》

img
img
代码语言:javascript
复制
/**
* 代码情诗:You are my sunshine
* <p/>
* 灵感来自英文歌曲《You are my sunshine》
* <p/>
* hujiawei 15/11/21
*/
public class YouAreMySunshine {

    //情诗主要内容
    public void poem() {
        //You are my sunshine my only sunshine
        I me = new I();
        You you = MySunshine.getSingleInstance();/*你是我的唯一的太阳*/

        //You make me happy when skies are gray
        if (Sky.isGray(you)) {
            you.makeMeHappy(me);/*当天空一片灰暗的时候你会逗我开心*/
        }

        //You'll never know dear how much I love you
        while (true) {
            you.neverKnow(Love.howMuch(me,you));/*你永远不知道我有多么得爱你*/
        }

        //Please don't take my sunshine away
        try {
            you.finalize();
        } catch (Throwable throwable) {
            you = MySunshine.getSingleInstance();/*当GC销毁你的时候我再造一个你*/
        }
    }

    //天空
    static class Sky {
        //天空是否是灰色的,由你是否开心决定 ↖(^ω^)↗
        static boolean isGray(You you) {
            return !you.happy();
        }
    }

    //我
    static class I {
        //我开心啦 ~\(≧▽≦)/~
        public void happy() {
        }
    }

    //你
    static class You {
        //你是否开心,希望你一直开心 (>^ω^<)
        public boolean happy() {
            return true;
        }

        //你能使我开心 ~\(≧▽≦)/~
        public void makeMeHappy(I me) {
            me.happy();
        }

        //你不知道我有多么爱你 (@﹏@)
        public void neverKnow(String howMuch) {
        }

        //"Garbage Collector (GC) 要 take you away" ~~o(>_<)o ~~
        @Override
        protected void finalize() throws Throwable {
            super.finalize();
        }
    }

    //我的太阳
    static class MySunshine extends You {
        //我的太阳我来"造" ↖(^ω^)↗
        private MySunshine() {
        }

        //"单例模式" (⊙o⊙)
        public static MySunshine getSingleInstance() {
            return MySunshineHolder.instance;
        }

        //"为了单例模式的多线程安全" (⊙o⊙)
        static class MySunshineHolder {
            private static MySunshine instance = new MySunshine();
        }
    }

    //爱
    static class Love{
        static final String INFINITE = "INFINITE";
        //我有多爱你,当然是无限爱啦 Y^o^Y
        public static String howMuch(I me, You you){
            return Love.INFINITE;
        }
    }

}
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2015/11/21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档