类的特殊获取方式——《Thinking in Java》随笔008

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了类的特殊获取方式——《Thinking in Java》随笔008相关的知识,希望对你有一定的参考价值。

//:Lauch.java
// 学习《Thinking in Java》的代码笔记 
// Soup是后面学习单例设计模式的一个基础。
package cn.skyfffire;

/**
 * 
 * @author skyfffire
 *
 */
class Soup {
    private Soup() {}
    /**
     * 可以via这个static method返回new objecy.
     * 
     * @return 新的对象的句柄
     */
    public static Soup makeSoup() {
        return new Soup();
    }
    
    /**
     * 创建静态对象并根据需求返回句柄
     * 
     * return ps1的句柄
     */
    private static Soup ps1 = new Soup();
    public static Soup access() {
        return ps1;
    }
    public void f() {
        System.out.println("Soup f function is run.");
    }
}

class Sandwich {
    public static void main(String[] args) {
        new Lauch().test();
    }
    
    public void f() {
        System.out.println("Sandwich f function is run.");
    }
}

/**
 * 当然,每一个文件都只有唯一的public class.
 *
 */
public class Lauch {
    void test() {
        Soup priv2 = Soup.makeSoup();
        Sandwich f1 = new Sandwich();
        
        priv2.f();
        f1.f();
        
        Soup.access().f();
    }
}
///:~

 

以上是关于类的特殊获取方式——《Thinking in Java》随笔008的主要内容,如果未能解决你的问题,请参考以下文章

[THINKING IN JAVA]复用类

Thinking in java 16/3/5

Thinking In Java

thinking in java反射

Hacker Rank: Two Strings - thinking in C# 15+ ways

thinking in java之Collections工具类的使用