国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

java實現策略模式使用示例

2019-11-26 15:40:52
字體:
來源:轉載
供稿:網友

思路如下:

使用interface來定義一個接口,在該接口中定義save()方法;
根據圖片格式定義不同的類,分別在這些類中使用關鍵字implements實現接口;
創建一個實現選擇的類,在該類中定義實現選擇的方法,該方法返回值為對應的圖片保存類;
在主方法中實現接口。
代碼如下:

復制代碼 代碼如下:

public interface ImageSaver {
    void save();//定義save()方法
}

public class GIFSaver implements ImageSaver {
    @Override
    public void save() {//實現save()方法
        System.out.println("將圖片保存成GIF格式");
    }
}

public class JPEGSaver implements ImageSaver {

    @Override
    public void save() {
        System.out.println("將圖片保存成JPG格式");
    }
}

public class PNGSaver implements ImageSaver {

    @Override
    public void save() {
        System.out.println("將圖片保存成PNG格式");
    }

}

public class TypeChooser {
    public static ImageSaver getSaver(String type) {
        if (type.equalsIgnoreCase("GIF")) {//使用if else語句來判斷圖片的類型
            return new GIFSaver();
        } else if (type.equalsIgnoreCase("JPEG")) {
            return new JPEGSaver();
        } else if (type.equalsIgnoreCase("PNG")) {
            return new PNGSaver();
        } else {
            return null;
        }
    }
}

public class User {
    public static void main(String[] args) {
        System.out.print("用戶選擇了GIF格式:");
        ImageSaver saver = TypeChooser.getSaver("GIF");//獲得保存圖片為GIF類型的對象
        saver.save();
        System.out.print("用戶選擇了JPEG格式:");//獲得保存圖片為JPEG類型的對象
        saver = TypeChooser.getSaver("JPEG");
        saver.save();
        System.out.print("用戶選擇了PNG格式:");//獲得保存圖片為PNG類型的對象
        saver = TypeChooser.getSaver("PNG");
        saver.save();
    }
}

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 安庆市| 安顺市| 肇州县| 山阳县| 常德市| 察雅县| 西和县| 行唐县| 营山县| 寻乌县| 图木舒克市| 上虞市| 吴忠市| 南陵县| 嵩明县| 北辰区| 通州市| 东宁县| 南投市| 静宁县| 河间市| 广东省| 芜湖县| 高碑店市| 龙山县| 海晏县| 沙湾县| 固安县| 宁阳县| 乌拉特前旗| 兰西县| 恭城| 沂水县| 大渡口区| 和林格尔县| 平江县| 莲花县| 湛江市| 灌云县| 思茅市| 鲁山县|