Java—面向对象—权限修饰符及思维导图
课上老师所讲实例整理:
package org.hanqi.pn0120; //汽车
public class Car { //颜色
private String yanse;
//品牌
private String pinpai;
//油箱容量
private double youxiangrl = 40;
//当前油量
private double dangqianrl; public double getDangqianrl()
{
return this.dangqianrl;
}
//加油
public void jiayou(double youliang)
{
if(youliang<0)
{
System.out.println("不要偷油");
}
else if(this.dangqianrl+youliang>this.youxiangrl)
{
//本次加油量
double bcyl = this.youxiangrl-this.dangqianrl;
this.dangqianrl=this.youxiangrl;
System.out.println("油太多了,已经加满了,这次加了"+bcyl+"升油");
}
else
{
this.dangqianrl+=youliang;
System.out.println("这次加了 "+youliang+"升油");
}
}
//private double youhao
private double xingshizlc = 0;
public double getXingshizlc()
{
return this.xingshizlc;
}
//行驶
public void xingshi(double xingshilc,double youhao)
{
//判断车本身有没有油
if(this.dangqianrl <=0)
{
System.out.println("车没有油,怎么开车");
return;
}
if(xingshilc < 0 || youhao < 0)
{
System.out.println("不可能这么开车");
}
else
{
//油耗
double dangqyh = xingshilc * youhao / 100;
this.dangqianrl -= dangqyh;
//验证当前油量
//this.dangqianrl = this.dangqianrl > 0 ?this.dangqianrl : 0;
if(this.dangqianrl<0)
{
this.dangqianrl=0;
System.out.println("你是推着车走么");
}
this.xingshizlc += xingshilc;
System.out.println("本次行驶了 "+xingshilc+" 公里");
}
} public String getYanse() {
return yanse;
}
public void setYanse(String yanse) {
this.yanse = yanse;
}
public String getPinpai() {
return pinpai;
}
public void setPinpai(String pinpai) {
this.pinpai = pinpai;
}
public double getYouxiangrl() {
return youxiangrl;
}
public void setYouxiangrl(double youxiangrl) {
this.youxiangrl = youxiangrl;
} public void setDangqianrl(double dangqianrl) {
this.dangqianrl = dangqianrl;
}
public Car(String pinpai, double youxiangrl) {
super();
this.pinpai = pinpai;
this.youxiangrl = youxiangrl;
} //main方法
public static void main(String[]args)
{
Car myBenchi = new Car("奔驰",50);
System.out.println("品牌="+myBenchi.getPinpai());
System.out.println("油箱容量="+myBenchi.getYouxiangrl());
myBenchi.xingshi(200, 13);
myBenchi.jiayou(30);
myBenchi.jiayou(30);
System.out.println("当前容量="+myBenchi.dangqianrl);
myBenchi.xingshi(300, 15);
System.out.println("当前容量="+myBenchi.dangqianrl);
System.out.println("当前总里程="+myBenchi.getXingshizlc());
myBenchi.xingshi(200, 13);
System.out.println("当前总里程="+myBenchi.getXingshizlc());
System.out.println("当前容量="+myBenchi.dangqianrl);
}
}
运行结果为:
思维导图:
Java—面向对象—权限修饰符及思维导图的更多相关文章
- java访问权限修饰符,一张图搞清楚
可横向,纵向进行比较记忆
- 关于Java的权限修饰符(public,private,protected,默认friendly)
以前对访问修饰符总是模棱两可,让自己仔细解释也是经常说不很清楚.这次要彻底的搞清楚. 现在总结如下: 一.概括总结 各个访问修饰符对不同包及其子类,非子类的访问权限 Java访问权限修饰符包含四个:p ...
- java访问权限修饰符
作用域 当前类 同一package 子孙类 其他package public √ √ √ √ protected √ √ √ × friendly √ √ × × private √ × × × ja ...
- 对于Java中权限修饰符的理解
老是把Java中权限修饰符给忘记,写一个博客加深印象吧 权限分为四个作用域:当前类,同一个包,其他包的子类,其他包的类. 首先要知道包的概念,Java中一个包是指一个package下的所有文件. pr ...
- [原创]Java性能优化权威指南读书思维导图
[原创]Java性能优化权威指南读书思维导图 书名:Java性能优化权威指南 原书名:Java performance 作者: (美)Charlie Hunt Binu John 译者: 柳飞 ...
- [原创]Java性能优化权威指南读书思维导图4
[原创]Java性能优化权威指南读书思维导图4
- [原创]Java性能优化权威指南读书思维导图3
[原创]Java性能优化权威指南读书思维导图3
- [原创]Java性能优化权威指南读书思维导图2
[原创]Java性能优化权威指南读书思维导图2
- java中权限修饰符protected的使用注意事项
java中四种权限修饰符, 平时编码中最常用的其实public和private, 虽然对protected的概念一直都知道, 但真正使用时才发现有些偏差. protected表示被其修饰的成员可以被本 ...
随机推荐
- PowerShell并发控制-命令行参数之四问
传教士问: win下如何 获取进程命令行,及命令行参数? 传教士答: 可以用这个powershell命令(实际上是wmi查询): (get-wmiobject -query "select ...
- c++高质量编程手册
怡化主管强烈要求我读这本书.... 笔记尚未完成,持续更新呗.. 第1章 高质量软件开发之道 1.1 软件质量基本概念 1.1.1 如何理解软件的质量:功能性和非公能性 1.1.2 提高软件质量的基本 ...
- 2016- 1- 16 NSThread 的学习
一:NSThread的概念: 二:NSThread的使用: 1.创建一个Thread 1.1第一种方法: - (void)test1{ NSString *str = @"zhengli&q ...
- Bochs使用说明
简介 关于Bochs的介绍:http://en.wikipedia.org/wiki/Bochs Bochs的官网:http://bochs.sourceforge.net/ 这里记录如何在Windo ...
- socket.io 入门教程
转载自:http://deadhorse.me/nodejs/2011/12/29/socket.io_induction.html socket.io socket.io是一个以实现跨浏览器.跨平台 ...
- Functions
Small The first rule of functions is that they should be small.The second rule of functions is that ...
- 制作0.5px像素的细条
<!DOCTYPE html><html><head> <meta charset="utf-8"> <meta name=& ...
- HDU 5047
http://acm.hdu.edu.cn/showproblem.php?pid=5047 直到看到题解,我才知道这道题考的是什么 首先交点数是Σ(16*i),区域区分的公式是 边数+点数+1=分成 ...
- U3D各路径实例
- 使用SSMS 2014将本地数据库迁移到Azure SQL Database
使用SQL Server Management Studio 2014将本地数据库迁移到Azure SQL Database的过程比较简单,在SSMS2014中,有一个任务选项为“将数据库部署到Win ...