/** * ドメイン非依存URL出力フィルタ * javadrill.tech移行時はwp_options.home/siteurlのみ変更すればよい * * データベースには絶対URL(https://minner.asia)を保持し、 * 表示時に現在のドメイン(home_url())に動的変換する */ function javadrill_make_urls_dynamic($content) { if (empty($content)) { return $content; } // データベース内の絶対URLを現在のhome_url()に置換 $old_url = 'https://minner.asia'; $new_url = untrailingslashit(home_url()); // http版も対応(念のため) $content = str_replace($old_url, $new_url, $content); $content = str_replace('http://minner.asia', $new_url, $content); return $content; } // 投稿本文、ウィジェット、タームの説明、抜粋に適用 add_filter('the_content', 'javadrill_make_urls_dynamic', 20); add_filter('widget_text', 'javadrill_make_urls_dynamic', 20); add_filter('term_description', 'javadrill_make_urls_dynamic', 20); add_filter('get_the_excerpt', 'javadrill_make_urls_dynamic', 20); 007 クラス (クラスの利用)017 解答例 | Javaドリル

007 クラス (クラスの利用)017 解答例

007-017 007 クラス

Productクラスの宣言

/**
 * Product クラスは商品の情報を保持し、表示するメソッドを提供します。
 */
public class Product {
    // 商品名
    private String name;
    // 商品価格
    private double price;

    /**
     * Product クラスのコンストラクタ
     *
     * @param name  商品名
     * @param price 商品価格
     */
    public Product(String name, double price) {
        this.name = name;
        this.price = price;
    }

    /**
     * 商品名を取得するメソッド
     *
     * @return 商品名
     */
    public String getName() {
        return name;
    }

    /**
     * 商品価格を取得するメソッド
     *
     * @return 商品価格
     */
    public double getPrice() {
        return price;
    }

    /**
     * 商品の情報を表示するメソッド
     */
    public void displayProductInfo() {
        System.out.println("Product: " + name);
        System.out.println("Price: $" + price);
        System.out.println("------------");
    }
}

Shopクラスの宣言

import java.util.ArrayList;
import java.util.List;

/**
 * Shop クラスは商品の管理を行います。
 */
public class Shop {
    // 商品リスト
    private List<Product> products;

    /**
     * Shop クラスのコンストラクタ
     */
    public Shop() {
        // 商品リストを初期化
        this.products = new ArrayList<>();
    }

    /**
     * 商品をショップに追加するメソッド
     *
     * @param product 追加する商品
     */
    public void addProduct(Product product) {
        // 商品リストに商品を追加
        products.add(product);
        // 追加された商品を表示
        System.out.println(product.getName() + " added to the shop.");
    }

    /**
     * 商品をショップから削除するメソッド
     *
     * @param product 削除する商品
     */
    public void removeProduct(Product product) {
        // 商品が削除できた場合
        if (products.remove(product)) {
            System.out.println(product.getName() + " removed from the shop.");
        } else {
            // 商品が見つからない場合
            System.out.println("Product not found in the shop.");
        }
    }

    /**
     * ショップ内のすべての商品を表示するメソッド
     */
    public void displayAllProducts() {
        // 商品がない場合
        if (products.isEmpty()) {
            System.out.println("No products in the shop.");
        } else {
            // すべての商品の情報を表示
            System.out.println("Products in the shop:");
            for (Product product : products) {
                product.displayProductInfo();
            }
        }
    }
}

利用例

public class Main {
    public static void main(String[] args) {
        // Shop クラスのインスタンスを作成
        Shop myShop = new Shop();

        // Product クラスのインスタンスを作成
        Product laptop = new Product("Laptop", 999.99);
        Product smartphone = new Product("Smartphone", 599.99);

        // 商品を追加
        myShop.addProduct(laptop);
        myShop.addProduct(smartphone);

        // 商品一覧表示
        myShop.displayAllProducts();

        // 商品を削除
        myShop.removeProduct(laptop);

        // 更新された商品一覧表示
        myShop.displayAllProducts();
    }
}

この例では、Shop クラスが Product クラスのオブジェクトをリストで管理し、商品の追加、削除、一覧表示を行っています。

「007 クラス」問題集リスト

🎯 実習で理解を深めよう

この内容についてJavaDrillで実際に手を動かして学習できます

コメント

タイトルとURLをコピーしました