PTA JAVA语言 面向对象程序设计 作业二 6-4 汽车类 编写汽车类,其功能有启动(start),停止(stop),加速(speedup)和减速(slowDown

6-4 汽车类

 谢谢大佬关注,不定期分享学习笔记,希望大佬能多多支持,三连必回

作者 温彦

单位 山东科技大学

编写汽车类,其功能有启动(start),停止(stop),加速(speedup)和减速(slowDown),启动和停止可以改变汽车的状态(on/off),初始时状态为off,速度为0,speedUp和slowDown可以调整汽车的速度,每调用一次汽车速度改变10(加速增10,减速减10),汽车启动后才能加减速,加速上限为160,减速下限为0,汽车速度减为0后才能停止,给出汽车类的定义。
Main函数中构造一个汽车对象,并对该对象进行操作,各个操作的编号为:

  1. start
  2. stop
  3. speedup
  4. slowdown
    操作完成后打印出汽车的状态和速度。

输入描述:

操作

输出描述:

汽车的状态和速度

裁判测试程序样例:

import java.util.Scanner;
public class Main{
    
    public static void main(String[] args) {
        Scanner s = new Scanner(System.in);
        int n = s.nextInt();
        Car c = new Car();
        for (int i=0;i<n;i++) {
            int a = s.nextInt();
            switch (a) {
            case 1: c.start(); break;
            case 2: c.stop(); break;
            case 3: c.speedUp(); break;
            case 4: c.slowDown(); break;
            }
        }
        System.out.print(c.status + " ");
        System.out.println(c.speed);
    }

}

/* 你的代码被嵌在这里 */

输入样例:

在这里给出一组输入。例如:

8
1 3 3 4 3 4 4 2

输出样例:

在这里给出相应的输出。例如:

off 0

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

class Car
{
    String status="off";
    int speed=0;
    void start()
    {
        status="on";
    }
    void stop()
    {
        if(speed==0)
            status="off";
    }
    void speedUp()
    {
        if(speed<160)
            speed+=10;
    }
    void slowDown()
    {
        if(speed>0)
            speed-=10;
    }
}

class Car
{
    String status="off";
    int speed=0;
    void start()
    {
        status="on";
    }
    void stop()
    {
        if(speed==0)
            status="off";
    }
    void speedUp()
    {
        if(speed<160)
            speed+=10;
    }
    void slowDown()
    {
        if(speed>0)
            speed-=10;
    }
}

谢谢大佬关注,不定期分享学习笔记,希望大佬能多多支持,三连必回

1. 什么是封装性? 封装性是指将的实现细节隐藏起来,不允许外部直接访问和修改的内部数据,而是通过提供公共的接口方法来进行操作。这样可以保证的内部实现不会被外部错误的修改,提高了代码的安全性和可维护性。 2. 如何实现封装性? 在Java中,可以通过访问修饰符来实现封装性。Java提供了三种访问修饰符:public、protected和private。 public修饰的成员变量和方法可以被任何、任何包中的代码访问。 protected修饰的成员变量和方法可以被同一个包中的代码以及其他包中的子访问。 private修饰的成员变量和方法只能在的内部访问,其他无法访问。 通过合理地使用访问修饰符,可以控制的访问权限,实现封装性。 3. 封装性的优点是什么? 封装性的优点包括: (1) 提高代码的安全性,防止外部访问和修改的内部数据。 (2) 提高代码的可维护性,内部数据的修改只需要在的内部进行,不会影响到外部。 (3) 提高代码的可重用性,外部只需要使用公共的接口方法进行操作,不需要了解的内部实现细节。 (4) 提高代码的可扩展性,可以在不修改的内部实现的情况下,通过添加新的接口方法来扩展功能。 4. 封装性的具体实现方法有哪些? 封装性的具体实现方法包括: (1) 将成员变量声明为private,通过公共的访问方法来进行访问和修改。 (2) 提供公共的访问方法,包括get和set方法,用于获取和设置成员变量的值。 (3) 在访问方法中添加必要的逻辑判断,例如参数的合法性检查、权限的检查等。 (4) 将的内部实现细节隐藏起来,不暴露给外部。 (5) 合理使用访问修饰符,控制的访问权限。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大葫芦臂围40狂敲代码

你的鼓励是前进的动力,有求必答

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值