学习练习 java面向对象封装汽车
package com.hanqi; //汽车
public class Car { // 车牌
private String CheP; // 油箱容量
private double YouXRL = 40; // 总里程数
private double ZongLC = 0; // 油耗
private double YouH = 10; // 当前油量
private double DangQYL = 0; public String getCheP() {
return CheP;
} public void setCheP(String cheP) {
CheP = cheP;
} public double getYouXRL() {
return YouXRL;
} public void setYouXRL(double youXRL) {
YouXRL = youXRL;
} public double getZongLC() {
return ZongLC;
} public void setZongLC(double zongLC) {
ZongLC = zongLC;
} public double getYouH() {
return YouH;
} public void setYouH(double youH) { if(youH >0)
{
YouH = youH;
}
else
{
System.out.println("油耗数据错误");
} } public double getDangQYL() {
return DangQYL;
} public void setDangQYL(double dangQYL) {
DangQYL = dangQYL;
} public Car(String cheP) {
super();
CheP = cheP;
} //方法
//加油
public void JiaYou(double youl)
{
if(youl < 0 )
{
System.out.println("不要偷我的油");
}
else if(youl > (YouXRL - DangQYL))
{
DangQYL = YouXRL; System.out.println("邮箱满了,装不下了");
}
else
{
DangQYL += youl; System.out.println("加油量 = " + youl);
}
}
//加油方法的重载,一次加满
public double JiaYou()
{
//计算
double rtn = YouXRL - DangQYL; JiaYou(rtn); //便于代码维护 return rtn;
} //行驶
public void XingShi (double licheng)
{
if(licheng < 0 )
{
System.out.println("车不能这样开");
}
else
{
//当前油量
DangQYL -= licheng * YouH /100; //总里程
ZongLC += licheng;
} } }
package com.hanqi;
public class Test11car {
public static void main(String[] args) {
// TODO 自动生成的方法存根
Car car1 = new Car("鲁c12345");
car1.setYouXRL(50);
System.out.println("油箱容量 = " + car1.getYouXRL() );
car1.JiaYou(40);
System.out.println("当前油量 = " + car1.getDangQYL());
car1.JiaYou();
System.out.println("当前油量 = " + car1.getDangQYL() );
car1.setYouH(7);
//行驶
car1.XingShi(100);
System.out.println("当前油量 = "+ car1.getDangQYL());
System.out.println("总里程 = " + car1.getZongLC());
}
}

学习练习 java面向对象封装汽车的更多相关文章
- Java面向对象㈠ -- 封装
Java的面向对象有三大特征:封装.继承.多态.这里主要对封装进行讲解. 封装可以理解为隐藏一个类的成员变量和成员函数,只对外提供需要提供的成员函数. Java的封装主要通过访问权限控制符:priva ...
- Java学习笔记(一) 面向对象---封装
面向对象---封装 封装是面向对象思想的三大特征之一. 理解: 隐藏对象的属性和实现细节,仅对外提供公共访问方式. 优点: 将变化隔离 便于使用 提升代码复用性 提高安全性 封装原则: 将不需要对外提 ...
- [ Java学习基础 ] Java的封装性与访问控制
Java面向对象的封装性是通过对成员变量和方法进行访问控制实现的,访问控制分为4个等级:私有.默认.保护和公有,具体规则如下表: 1.私有级别 私有级别的关键字是private,私有级别的成员变量和方 ...
- 我的Java学习笔记-Java面向对象
今天来学习Java的面向对象特性,由于与C#的面向对象类似,不需详细学习 一.Java继承 继承可以使用 extends 和 implements 这两个关键字来实现继承. extends:类的继承是 ...
- Java面向对象封装和继承
面向对象 什么是面向过程.面向对象? 面向过程与面向对象都是我们编程中,编写程序的一种思维方式. 面向过程的程序设计方式,是遇到一件事时,思考“我该怎么做”,然后一步步实现的过程.例如:公司打扫卫生( ...
- JAVA面向对象-----封装
我们日常使用的电脑主机,把cpu.内存.主板等等都封装到机箱里面去.假如没有机箱的话的出现什么问题,主机.主板全部都散落在一处,然后开机没有开机按钮,那么需要我们直接操作接跳线才能把电脑开启.这样子的 ...
- Java面向对象----封装概念
封装 信息隐藏,隐藏对象的细节 访问修饰符 public private protected 默认 属性封装的实现 方法封装的目的(隐藏方法实现细节) package com.tanlei.newer ...
- Java面向对象封装优化2_构造方法
1. 类 package cn.itcast.day06.demo05; /* 一个标准的类通常要拥有下面四个组成部分: 1. 所有的成员变量都要使用private关键字修饰 2. 为每一个成员变量编 ...
- 学习练习 java面向对象存取款查询余额
package com.hanqi; public class Account { String ZhangHao; double CunKuanYuE; Account(String ZhangHa ...
随机推荐
- sqlite3移植到arm linux
1,环境: 软件:linux:2.6.38 硬件:6410 交叉编译工具:arm-linux-gcc 也适用于其他linux平台. 2,步骤: 1>下载sqlite3源码包: http://ww ...
- 【Android学习日记】
(一) Android 开发基础 1 Android平台的特性 1) 应用程序框架支持组建的重用和替换,包括打电话应用程序.文件管理器等. 2) Dalvik虚拟机专门为移动设备做了优化,Dalv ...
- 单源最短路径——dijkstra算法
dijkstra算法与prim算法的区别 1.先说说prim算法的思想: 众所周知,prim算法是一个最小生成树算法,它运用的是贪心原理(在这里不再证明),设置两个点集合,一个集合为要求的生成树的 ...
- 黄聪:C#图片处理封装类(裁剪、缩放、清晰度、加水印、生成缩略图)有示例(转)
C#图片处理示例(裁剪,缩放,清晰度,水印) 吴剑 2011-02-20 原创文章,转载必需注明出处:http://www.cnblogs.com/wu-jian/ 前言 需求源自项目中的一些应用,比 ...
- linux命令(7)killall
killall命令: Linux系统中的killall命令用于杀死指定名字的进程(kill processes by name).我们可以使用kill命令杀死指定进程PID的进程,如果要找到我们需要杀 ...
- A note to "On global motions of a compressible barotropic and selfgravitating gas with density-dependent viscosities"
Ducomet, Bernard; Nečasová, Šárka; Vasseur, Alexis. On global motions of a compressible barotropic a ...
- AD7190学习笔记
1 建议SCL空闲时会高电平. 2复位:上电后连续输入40个1(时钟周期)复位到已知状态,并等待500us后才能访问串行接口,用于SCLK噪音导致的同步. 3单次转换与连续转换(连续读取):每次转换是 ...
- Installing Redis on Ubuntu
wget http://download.redis.io/redis-stable.tar.gz tar xvzf redis-stable.tar.gz cd redis-stable sudo ...
- 如何让div水平居中
代码实例: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w ...
- WebBrowserControl
Before navigating the URL, write meta into webbrowser's documenttext property as follows: //Setting ...