国产探花免费观看_亚洲丰满少妇自慰呻吟_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();
    }
}

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 辛集市| 雷州市| 隆尧县| 河曲县| 濮阳市| 湛江市| 印江| 襄城县| 扬州市| 元氏县| 大田县| 中阳县| 大兴区| 比如县| 若尔盖县| 藁城市| 屏山县| 达孜县| 山东省| 宣恩县| 全椒县| 喜德县| 东港市| 志丹县| 翁牛特旗| 彭山县| 五寨县| 安平县| 内黄县| 于田县| 赤峰市| 敦煌市| 修文县| 丹棱县| 芜湖县| 乌鲁木齐县| 武强县| 安国市| 宜兰县| 阳泉市| 锡林浩特市|