zoukankan      html  css  js  c++  java
  • 3.5.5 汽车类的例子

    • 字段
      私有字段(int)。_百公里耗油,表示汽车行驶100公里消耗几升油(默认为10)。
      私有字段(int)。_油箱容积,表示油箱最大可以加几升油(默认为60)。
      私有字段(int)。_油表,表示当前油箱还剩余几升油。
      私有字段(int)。_公里数,表示汽车一共行驶了几公里。
    • 属性
      只读属性(int)。百公里耗油,封装_百公里耗油字段,百公里耗油对于一个汽车来说是一个固定参数,一般不会改变,因此不允许用户设置。
      只读属性(int)。油箱容积,封装_油箱容积字段,油箱容积对于一个汽车来说是一个固定参数,一般不会改变,因此不允许用户设置。
      读写属性(int)。油表,封装_油表字段。
      读写属性(int)。公里数,封装_公里数字段。
    • 构造方法
      不带参数。获得一个加满油的新车,里程数为0。
      带一个当前油表参数。获得一个新车,里程数为0,油表为传入的当前油表参数的值。
      带一个当前油表参数和一个当前里程参数。获得一个旧车,里程数为传入的当前里程参数的值,油表为传入的当前油表参数的值。
    • 私有方法
      计算油耗。根据传入的行驶公里参数计算油耗并返回。
    • 公有方法
      行驶。根据传入的行驶公里数参数行驶一段距离。如果油耗不足。给出行驶失败提示,否则给出行驶成功提示。
      加油。直接为汽车加满油。显示一共加了多少升的油。
      重载了油箱方法。根据传入的加油体积参数为汽车加一定的油。如果加入的油加上剩余的油超过了油箱最大容积,就给出加油失败提示,否则给出加油成功提示。
      获取汽车当前信息。输出汽车的当前油表数和当前里程数。
    using System;
    using System.Collections.Generic;
    using System.Text;

    namespace 汽车类
    {
        
    class Car
        
    {
            
    private int _百公里耗油 = 10;
            
    private int _油箱容积 = 60;
            
    private int _油表;
            
    private int _公里数;

            
    public int 百公里耗油
            
    {
                
    get return 百公里耗油; }
            }

            
    public int 油箱容积
            
    {
                
    get return _油箱容积; }
            }

            
    public int 油表
            
    {
                
    get return _油表; }
                
    set { _油表 = value; }
            }

            
    public int 公里数
            
    {
                
    get return _公里数; }
                
    set { _公里数 = value; }
            }


            
    public Car()
            
    {
                _油表 
    = _油箱容积;
                _公里数 
    = 0;
            }

            
    public Car(int 当前油表)
            
    {
                _油表 
    = 当前油表;
                _公里数 
    = 0;
            }

            
    public Car(int 当前油表, int 当前里程)
            
    {
                _油表 
    = 当前油表;
                _公里数 
    = 当前里程;
            }


            
    private int 计算耗油(int 行驶公里数)
            
    {
                
    return 行驶公里数 * _百公里耗油 / 100;
            }

            
    public void 行驶(int 行驶公里数)
            
    {
                Console.WriteLine(
    "行驶{0}公里开始", 行驶公里数);
                
    if (_油表 > 计算耗油(行驶公里数))
                
    {
                    _公里数 
    += 行驶公里数;
                    _油表 
    -= 计算耗油(行驶公里数);
                    Console.WriteLine(
    "行驶完毕");
                }

                
    else
                    Console.WriteLine(
    "油耗不足,行驶失败");
            }

            
    public void 加油()
            
    {
                Console.WriteLine(
    "加油开始");
                
    int 需要加的油 = _油箱容积 - _油表;
                _油表 
    += 需要加的油;
                Console.WriteLine(
    "加油完毕,一共加了 {0} 升", 需要加的油);
            }

            
    public void 加油(int 加油体积)
            
    {
                Console.WriteLine(
    "加油{0}升开始", 加油体积);
                
    if (加油体积 < _油箱容积)
                
    {
                    _油表 
    += 加油体积;
                    Console.WriteLine(
    "加油完毕");
                }

                
    else
                    Console.WriteLine(
    "超过最大油箱容积,加油失败");
            }


            
    public void 获取当前汽车信息()
            
    {
                Console.WriteLine(
    string.Format("当前油表:{0} 当前里程数:{1}", _油表, _公里数));
            }

        }


        
    class Program
        
    {
            
    static void Main(string[] args)
            
    {
                Car car 
    = new Car();
                car.行驶(
    100);
                car.获取当前汽车信息();
                car.行驶(
    400);
                car.获取当前汽车信息();
                car.加油(
    60);
                car.获取当前汽车信息();
                car.加油();
                car.获取当前汽车信息();
            }

        }

    }
  • 相关阅读:
    软件测试七年之痒,依然热爱!我还是从前那个少年!
    我想从功能测试转向自动化测试,怎么办?
    python中的一些内置函数
    python中eval()
    集合
    列表的切片:取出来还是一个列表,可用在复制列表元素的操作
    字符串常用的方法
    dict字典,以及字典的一些基本应用
    list列表(也叫数组),以及常用的一些方法
    jsonpath的用法
  • 原文地址:https://www.cnblogs.com/0754ydj/p/1250880.html
Copyright © 2011-2022 走看看