什么是对象?
先对「对象」有个简单的概念,什么是对象,什么都可以是对象,对象最主要的特征就是有自己的属性 和函数。
举个例子,在极客战记中英雄就是一个对象,你也是一个对象,你的属性就是你的身高体重,你的函数 就是你能做的事情。
英雄的属性就是英雄的血量,英雄的坐标等等。
不仅是活的东西,你要是愿意,一棵树也能是对象,一个杯子也能是对象,它们也有着自己的属性,高 度尺寸等等。
在极客战记的沙漠地图中,关卡为了检验同学们对对象属性的了解,设下了这样一个代码要求:当英雄血量小于30时做某事。
if hero.health < 30:
这就是属性的用法,因为hero是对象的名字,health——血量,是对象英雄hero的属性,所以我们可以 直接通过hero.health,来得到英雄此时此刻的血量数据。
而在极客战记的森林地图中,则又藏着一个巧妙的设计,在这一地图中,同学们如果需要收集一个名叫 item的物品,那就必须走到它的坐标上;或是如果我们需要在英雄当前的位置上移动,那就需要对英雄 当前的位置坐标进行调整。
那么在关卡的引导下,同学们学到的写法是这样的:
# 捡东西
hero.moveXY(item.pos.x,item.pos.y)
# 在英雄当前位置上移动
hero.moveXY(hero.pos.x+5,hero.pos.y+10)
先对「对象」有个简单的概念,什么是对象,什么都可以是对象,对象最主要的特征就是有自己的属性 和函数。
举个例子,在极客战记中英雄就是一个对象,你也是一个对象,你的属性就是你的身高体重,你的函数 就是你能做的事情。
英雄的属性就是英雄的血量,英雄的坐标等等。
不仅是活的东西,你要是愿意,一棵树也能是对象,一个杯子也能是对象,它们也有着自己的属性,高 度尺寸等等。
在极客战记的沙漠地图中,关卡为了检验同学们对对象属性的了解,设下了这样一个代码要求:当英雄血量小于30时做某事。
if hero.health < 30:
这就是属性的用法,因为hero是对象的名字,health——血量,是对象英雄hero的属性,所以我们可以 直接通过hero.health,来得到英雄此时此刻的血量数据。
而在极客战记的森林地图中,则又藏着一个巧妙的设计,在这一地图中,同学们如果需要收集一个名叫 item的物品,那就必须走到它的坐标上;或是如果我们需要在英雄当前的位置上移动,那就需要对英雄 当前的位置坐标进行调整。
那么在关卡的引导下,同学们学到的写法是这样的:
# 捡东西
hero.moveXY(item.pos.x,item.pos.y)
# 在英雄当前位置上移动
hero.moveXY(hero.pos.x+5,hero.pos.y+10)