1、对象在需求中的使用
(1)需求:把大象装冰箱里
(2)对象:大象、冰箱
分三步:
打开冰箱门
将大象装进去
关闭冰箱门
(3)分析发现打开、装、关闭都是冰箱的功能。即冰箱对象具备如下功能
冰箱打开
冰箱存储
冰箱关闭
(4)伪代码
1 描述大象: 2 class 大象 3 { 4 } 5 描述冰箱 6 class冰箱 7 { 8 void 打开(){} 9 void 存储(大象){} 10 void 关闭(){} 11 }
(5)当把具体的事物描述清楚之后,需要使用这些具体的事物,Java使用具体的事物,需要通过new关键字来创建这个事物的具体实例
(6)使用对象:
创建冰箱的对象
冰箱 bx = new 冰箱();
调用冰箱的功能
1 对象.功能(); 2 bx.打开(); 3 bx.存储(new 大象()); 4 bx.关闭();
2、对象在代码中的体现
(1)事物其实就是由特点(属性)和行为(功能)组成的
(2)可以简单理解:属性就是数值,其实就是变量;行为就是功能,就是方法
(3)通过计算机语言Java来描述这个事物
(4)定义类的格式
1 public class 类名 { 2 //可编写0至n个属性 3 数据类型 变量名1; 4 数据类型 变量名2; 5 6 //可编写0至n个方法 7 修饰符 返回值类型 方法名(参数){ 8 执行语句; 9 } 10 }
(5)类的真正意义就是在描述事物。属性和功能统称为事物中的成员
(6)事物的成员分为两种:成员属性和成员功能。
(7)成员属性在代码中的体现就是成员变量
(8)成员功能在代码中的体现就是成员方法
(9)创建对象的格式
类名 对象名 =new 类名();
3、类和对象的区别
(1)面向对象的编程思想力图在程序中对事物的描述与该事物在现实中的形态保持一致
(2)类是对某一类事物的抽象描述,而对象用于表示现实中该类事物的个体
(3)类是用于描述事物的,类中可以定义事物的属性和行为。而对象是通过描述的这个类,使用new关键字创建出来,通过对象就可以调用该对象具体的属性和功能了
4、局部变量和成员变量的区别
区别一:定义的位置不同
定义在类中的变量是成员变量
定义在方法中或者{}语句里面的变量是局部变量
区别二:在内存中的位置不同
成员变量存储在对内存的对象中
局部变量存储在栈内存的方法中
区别三:声明周期不同
成员变量随着对象的出现而出现在堆中,随着对象的消失而从堆中消失
局部变量随着方法的运行而出现在栈中,随着方法的弹栈而消失
区别四:初始化不同
成员变量因为在堆内存中,所有默认的初始化值
局部变量没有默认的初始化值,必须手动的给其赋值才可以使用
分析发现打开、装、关闭都是冰箱的功能。即冰箱对象具备如下功能: