package com.study;
//自动售卖机
public class vmachine
{
private int price = 80;
private int balance;
private int total; void setPrice(int price)
{
this.price=price;
} void show()
{
System.out.println("Welcome");
} void insertMoney(int amount)
{
balance = balance + amount;
} void showBalance()
{
System.out.println(balance);
} void getFood()
{
if (balance >= price)
{
System.out.println("Here you are!");
balance = balance - price;
total = total + price;
}
} public static void main(String[] args)
{
vmachine v1 = new vmachine();
v1.show();
v1.showBalance();
v1.insertMoney(100);
v1.getFood();
v1.showBalance();
vmachine v2=new vmachine();
v2.showBalance();
v2.insertMoney(200);
v1.showBalance();
v2.showBalance(); }
}

备注:1.写了一个简单的自动售卖机的小程序,来好好体会Java中面向对象编程的思想。

2.面向对象的编程思想,即现实世界中所有问题都可以抽象成对象模型。

   3.按照设计模式的原则中的单一职责原则,每个对象承担单一的职责,将类的成员变量和成员函数放在一起封装起来。

Java进阶学习(1)之类与对象(上)的更多相关文章

  1. Java进阶学习:将文件上传到七牛云中

    Java进阶学习:将文件上传到七牛云中 通过本文,我们将讲述如何利用七牛云官方SDK,将我们的本地文件传输到其存储空间中去. JavaSDK:https://developer.qiniu.com/k ...

  2. Java进阶2 数组内存和对象的内存管理知识

    Java进阶2 数组内存和对象的内存管理知识 20131028 前言: 在面试的时候,如果是Java的编程语言,也许你认为没有什么可以问的,只能够说明你对于Java了解的太浅了,几乎就是两个星期的节奏 ...

  3. Java进阶学习:log4j的学习和使用

    Java进阶学习——log4j的学习和使用 简介Loj4j Log4j的组成 Log4j主要由三大组组件构成: Logger: 负责生成日志,并能够对日志信息进行分类筛选,通俗的讲就是决定什么日志信息 ...

  4. 《java JDK7 学习笔记》之对象封装

    1.构造函数实现对象初始化流程的封装.方法封装了操作对象的流程.java中还可以使用private封装对象私有数据成员.封装的目的主要就是隐藏对象细节,将对象当做黑箱子进行操作. 2.在java命名规 ...

  5. Javascript进阶篇——( JavaScript内置对象---上-Date,string,charAt,indexOf,split,substring,substr)笔记整理

    什么是对象JavaScript 中的所有事物都是对象,如:字符串.数值.数组.函数等,每个对象带有属性和方法.对象的属性:反映该对象某些特定的性质的,如:字符串的长度.图像的长宽等:对象的方法:能够在 ...

  6. Java反射学习-5 - 反射复制对象

    通过反射方式复制对象: package cn.tx.reflect; import java.lang.reflect.Constructor; import java.lang.reflect.Fi ...

  7. Java进阶学习(3)之对象容器(上)

    对象容器 顺序容器 记事本的例子 UI设计和业务逻辑要分离 接口设计 add(String note); getSize(); getNote(int index); removeNote(index ...

  8. Java进阶学习(2)之对象交互(上)

    对象交互 对象交互 对象的识别 时钟小程序 把现实世界用对象去建模,去分解问题规模,最终抽象成对象和对象的模型 例如11:03的小程序,可以抽象成一个显示类,一个类生成两个对象去表示时钟 packag ...

  9. Java进阶学习(3)之对象容器.小练习

    查找里程(10分) 题目内容: 下图为国内主要城市之间的公路里程: 你的程序要读入这样的一张表,然后,根据输入的两个城市的名称,给出这两个城市之间的里程. 注意:任何两个城市之间的里程都已经给出,不需 ...

随机推荐

  1. msfconsole启动失败并报错`not_after=': bignum too big to convert into `long'的解决方法

    1.启动msfconsole失败并报如下错误: /usr/share/metasploit-framework/lib/msf/core/payload/android.rb:86:in `not_a ...

  2. 0009 注册登录(第二步:获取短信接口access token)

    1 在GeneralTools目录下创建一个常量文件Constants.py 获取短信验证之前需要申请腾讯云短信服务. """ 腾讯云短信相关常量 "" ...

  3. ❀❀ selenium 学习网站 ★★★★★

    http://edu.51cto.com/course/course_id-7320.html   Selenium IDE WEB自动化测试入门视频课程(上)(共10课时)_在线自学视频教程_51C ...

  4. ubuntu18+caffe+cuda

    昨天安装caffe,因为用的是cuda10.2,遇到各种问题,最终也没有安装成功.使用cmake配置成功.生成成功.编译的时候报错. /usr/local/cuda/include/cuda_runt ...

  5. Python之路Day06

    小数据池 == 判断两个值是否相等 is -- 是,判断两边的内存地址是否相同 a=10 b=10 print(a is b) id() -- 查看内存地址 代码块 一个py文件,一个函数,一个模块, ...

  6. orcal时区

    查询数据库时区 select dbtimezone from dual 修改时区 alter database set time_zone='+8:00';

  7. (转)java垃圾回收二

    转自:http://shuaijie506.iteye.com/blog/1779651 在网上看到一篇不错的文章,记录下来备忘. 要理解java对象的生命周期,我们需要要明白两个问题, 1.java ...

  8. Java内存管理(1)——垃圾收集

    其它语言(如C语言)要求程序员显式地分配内存.释放内存. 程序需要内存时分配内存,不需要时释放内存. 但是这种做法常常引起内存泄漏.所谓内存泄漏,就是由于某种原因使分配的内存始终没有得到释放.如果该任 ...

  9. vue的$on,$emit

    使用 $on(eventName) 监听事件使用 $emit(eventName) 触发事件 Api 中的解释: vm.$emit( event, […args] ) 参数: {string} eve ...

  10. rpm命令怎么指定安装位置

    rpm   -ivh    --prefix=路径      FILE.rpm