duck
本文最后更新于 194 天前,其中的信息可能已经有所发展或是发生改变。

java主要对类进行设计,理解继承、重载、重写、使用方法来修改属性。

1 设计一个鸭子的父类(color,heavy,fly(),quack())

2 设计两种不同鸭子的子类继承鸭子的父类(使用构造函数初始化属性,SetHeavy()进行重载

3 父类对其中的方法进行重写(具体实现都用打印字符串)

Duck.java

package test2;

// Duck 类:鸭子的父类
public class Duck {
    private String color;
    private double weight;

    // 构造函数
    public Duck(String color, double weight) {
        this.color = color;
        this.weight = weight;
    }
    // 飞行方法
    public void fly() {
        System.out.println("I'm flying!");
    }
    // 呱呱叫方法
    public void quack() {
        System.out.println("Quack Quack!");
    }
    // 设置重量方法
    public void setWeight(double weight) {
        this.weight = weight;
    }
    // 获取颜色方法
    public String getColor() {
        return color;
    }
    // 获取重量方法
    public double getWeight() {
        return weight;
    }
    // 重写 toString 方法
    @Override
    public String toString() {
        return "Duck{" +
                "color='" + color + '\'' +
                ", weight=" + weight +
                '}';
    }
}

MallardDuck.java

package test2;

// MallardDuck 类:绿头鸭子的子类
public class MallardDuck extends Duck {
    // 构造函数
    public MallardDuck(String color, double weight) {
        super(color, weight);
    }

    // 重写飞行方法
    @Override
    public void fly() {
        System.out.println("Mallard Duck is flying!");
    }

    // 重载设置重量方法
    public void setWeight(double weight, String unit) {
        System.out.println("将Mallard Duck的重量设置为 " + weight + " " + unit);
        super.setWeight(weight);
    }
}

RubberDuck.java

package test2;

// RubberDuck 类:橡皮鸭子的子类
public class RubberDuck extends Duck {
    // 构造函数
    public RubberDuck(String color, double weight) {
        super(color, weight);
    }

    // 重写呱呱叫方法
    @Override
    public void quack() {
        System.out.println("Squeak Squeak!");
    }

    // 重载设置重量方法
    public void setWeight(double weight, boolean inflated) {
        if (inflated) {
            System.out.println("Rubber Duck 充气,将重量设置为 " + weight);
            super.setWeight(weight);
        } else {
            System.out.println("Rubber Duck 没有充气,不能设定重量!");
        }
    }
}

Main.java

package test2;

// 测试类
public class Main {
    public static void main(String[] args) {
        // 创建 MallardDuck 实例
        MallardDuck mallardDuck = new MallardDuck("Green", 2.5);
        System.out.println("Mallard Duck: " + mallardDuck);
        mallardDuck.fly(); // 调用重写的飞行方法
        mallardDuck.setWeight(3.0, "kg"); // 调用重载的设置重量方法
        System.out.println("重设重量后的Mallard Duck: " + mallardDuck);

        System.out.println();

        // 创建 RubberDuck 实例
        RubberDuck rubberDuck = new RubberDuck("Yellow", 0.1);
        System.out.println("Rubber Duck: " + rubberDuck);
        rubberDuck.quack(); // 调用重写的呱呱叫方法
        rubberDuck.setWeight(0.2, true); // 调用重载的设置重量方法
        System.out.println("重设重量后的Rubber Duck: " + rubberDuck);
        rubberDuck.setWeight(0.3, false); // 调用重载的设置重量方法
    }
}

结果:

duck : http://116.62.240.154:9520/duck_color_heavy/
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇