理解:
类定义了对象长什么样,对象则是按照类的定义所制作出来的实体,一个类可以创建很多对象,每个对象有自己的数据。
来自中国大学MOOC
- 对象是实体,需要被创建,可以为我们做事情。
- 类是规范,根据类的定义来创建对象。
我们创建了一个类后,在类里面完成基础的定义,然后在不同输出的时候,可以搞不同的对象。
类,定义一个对象应该有什么,能做什么,给了一个基础的框架。然后可以直接创建不同对象,不过对象的基本参数是安装类设置好的格式进行设置的。(妈呀!我都不知道自己在说什么。)每一个对象都有自己的不同的属性,但是能做相同的动作(方法)。
- 对象(某只猫)
- 表达东西或事件
- 运行时响应消息(提供服务)
- 类(猫)
- 定义所有猫的属性
- 就是Java的类型
- 可以用来定义变量
每一个对象都是都是的一个类的实体。
每个对象都有:属性和服务。
- 属性:数据或状态
- 服务 :方法
把数据和对数据的操作放在一起——封装。
opp特性
- 一切都是对象
- 程序就是一堆互相发送消息的对象
- 每个对象有自己的存储空间,里面是其他的对象
- 每个对象都有一个类型
- 所有属于某个特定类型的对象可以提供相同的服务
定义类
自动售货机为例:
程序员眼中的售货机。
package vendingMachine;
public class VendingMachine {
int price = 80;//创建属性prince,并赋值80(定价80)
int balance; //当前的余额
int total;
void showPrompt()
{
System.out.println("Welcom 求知张郎的自动售货机");
}
void insertMoney( int amount)
{
System.out.println("您投入的金额为:"+(balance = balance + amount));
}
void showBalance(){
System.out.println("您的余额为:"+balance);
}
void getFlood()
{
if(balance >= price){
System.out.println("Here you are !");
balance = balance - price;
total = total + price;
}
else{
System.out.println("资金不足!请将继续投币。"
+ "^_^");
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
VendingMachine vm = new VendingMachine();//制作对象vm;
vm.showPrompt();//调用showPrompt方法。
vm.showBalance();
vm.insertMoney(100);// 调用方法insertMoney,并赋值100(表示投入金额100元)
vm.getFlood();//
vm.showBalance();// 重新显示余额。
}
}
Welcom 求知张郎的自动售货机
您的余额为:0
您投入的金额为:100
Here you are !
您的余额为:20