不像原始数据类型boolean,int 和 float 只能存一个值,一个对象可以存很多值。但这也是我们讲的一部分,对象也是用相关函数将变量编组的一种方式。

域和方法

在对象的上下文中,一个变量被叫做一个值域(field),一个函数被叫做一个方法(method)。值域和方法的工作原理与函数和变量一样

用建筑来做类比,类(class)就像是房子的蓝图。与对象一样,类定义了数据类型和行为,但每一个由类(蓝图)定义的对象(房子)都有变化(颜色,有无壁炉),这些由不同的值来设置。用一个更加专业的术语来说,每一个对象都是一个类的实例,每一个实例都有独立设置的值域和方法。

操作步骤

  1. 为类提取值域
  2. 为类创建方法
  3. 进行编写类:首先创建一个块 class JitterBug{ }
  4. 然后添加值域:
    class JitterBug{
    float x;
    float y;
    int diameter;
    float speed = 0.5;
    }
  5. 添加构造函数。构造函数的名称通常与类的名称相同。设置构造函数的目的是在创建一个对象的时候为值域初始化赋值。这里需要注意的是,它们只有在为一部分类中的值域中赋值时才会使用。还要注意构造函数不返回任何值,因此它也没有一个 void 或值其他任何数据类型的声明。
    JitterBug{float tempX,float tempY,int tempDiameter){
    x = tempX;
    y = tempY;
    diameter = tempDiameter;
    }

6 .最后添加方法:

void move(){
x + = random(-speed,speed);
y + = random(-speed,speed);
} void display(){
ellipse(x,y,diameter,diameter);
}

创建对象

  1. 声明对象变量
  2. 用关键词 new 创建(初始化)对象。
    在void setup(){之前,添加:
    JitterBug bug;
    在void setup()之中,添加
    bug = new JitterBug(width/2,height/2,20);

标签

可以将类放在另一个标签中,另外一个标签作为一个新的 pde 文件进行保存。

Getting Started with Processing 第十章——对象的更多相关文章

  1. 《C++ Primer Plus 6th》读书笔记 - 第十章 对象和类

    1. 过程性编程和面向对象编程 2. 抽象和类 1. 使用类对象的程序都可以直接访问公有部分,但只能通过公有成员函数(或友元函数)来访问对象的私有成员 2. 可以在类声明之外定义成员函数,并使其成为内 ...

  2. C++ Primer Plus读书笔记

    第五章 循环和关系表达式 1. 2.类别别名: (1)   #define FLOAT_POINTER float * FLOAT_POINTER pa, pb; 预处理器置换将该声明转换成  flo ...

  3. OBS带你玩转图片

    [摘要] 图片处理特性(Image Processing)是对象存储服务(Object Storage Service,OBS)为用户提供稳定.安全.高效.易用.低成本的图片处理服务,包括:图片剪切. ...

  4. pb datawindow 类型

    DataWindow.Processing 判断 DataWindow 对象的类型 可用 DataWindow.Processing 判断 DataWindow 对象的类型,dw的类型如下:     ...

  5. 《Tomcat权威指南》读书笔记

    第一章 Tomcat的开幕式 1.Tomcat是以Java编写的,这表示在能够构建和测试它之前,必须安装最新的.完整的JAVA运行环境(JRE,Java runtime). 2.Catalina To ...

  6. Python mutilprocessing Processing 父子进程共享文件对象?

    multiprocessing python多进程模块, 于是, Processing也是多进程的宠儿. 但今天讨论的问题, 似乎也能引起我们一番重视 直接上代码:     1 2 3 4 5 6 7 ...

  7. Java 第十章 类和对象

    类和对象 类与对象的关系是什么? 答 :类是具有相同属性和方法的一组对象的集合. 类是抽象的,对象是具体的:类是对象的模版,对象是类的实例. 定义一个类的语法是什么? public class 类名{ ...

  8. JAVASCRIPT高程笔记-------第十章 DOM对象

    10.1.1 node类型 --除IE外 所有浏览器都可以访问到这个类型 :JS中所有的节点类型都继承自Node类型 nodeName 与nodeValue  如果是一个元素 那么nodeName中保 ...

  9. 【WPF学习】第三十章 元素绑定——绑定到非元素对象

    前面章节一直都在讨论如何添加链接两个各元素的绑定.但在数据驱动的应用程序中,更常见的情况是创建从不可见对象中提取数据的绑定表达式.唯一的要求是希望显示的信息必须存储在公有属性中.WPF数据绑定数据结构 ...

随机推荐

  1. Linux下的查找技巧

    Find知识点: -mtime ——修改时间 -ctime ——创建时间 -atime ——访问时间 mtime 举例说明: -mtime n : n为数字,意思为在n天之前的“一天之内”被更改过内容 ...

  2. opencv学习之路(15)、形态学其他操作(开、闭、顶帽、黑帽、形态学梯度)

    一.形态学其他操作(用的不多,如果忘了也可以通过膨胀腐蚀得到相同效果) 1.开运算 2.闭运算 3.形态学梯度 4.顶帽 5.黑帽 #include "opencv2/opencv.hpp& ...

  3. Junit 的Assertions的使用

    import static org.hamcrest.CoreMatchers.allOf; import static org.hamcrest.CoreMatchers.anyOf; import ...

  4. cmd copy命令 文件复制【转】

    本文转载自:https://www.jb51.net/article/18981.htm copy,中文含义为“复制”,一个很容易见名知意的命令,它的作用是复制文件,用法十分简单:copy 源文件 目 ...

  5. 密码发生器|2012年蓝桥杯B组题解析第八题-fishers

    (10')密码发生器 在对银行账户等重要权限设置密码的时候,我们常常遇到这样的烦恼:如果为了好记用生日吧,容易被破解,不安全:如果设置不好记的密码,又担心自己也会忘记:如果写在纸上,担心纸张被别人发现 ...

  6. html 之 table cellpadding,cellspacing

    单元格(cell) -- 表格的内容 单元格边距(表格填充)(cellpadding) -- 代表单元格外面的一个距离,用于隔开单元格与单元格空间 单元格间距(表格间距)(cellspacing) - ...

  7. CF600E Lomsat gelral(dsu on tree)

    dsu on tree跟冰茶祭有什么关系啊喂 dsu on tree的模板题 思想与解题过程 类似树链剖分的思路 先统计轻儿子的贡献,再统计重儿子的贡献,得出当前节点的答案后再减去轻儿子对答案的贡献 ...

  8. 题解——HDU 1848 Fibonacci again and again

    一道组合游戏的题目 SG函数的板子题 预处理出SG函数的值然后回答询问即可 代码 #include <cstdio> #include <algorithm> #include ...

  9. kubernetes 实战5_命令_Assign Pods to Nodes&Configure a Pod to Use a ConfigMap

    Assign Pods to Nodes how to assign a Kubernetes Pod to a particular node in a Kubernetes cluster. Ad ...

  10. Shell脚本(三)

    摘自:菜鸟教程 http://www.runoob.com/linux/linux-shell-echo.html Shell命令 1. echo命令 字符串输出 echo "OK! \c& ...