Person person = new Person("小王",27)
在内存中分配一定的存储空间,初始化其附加成员,调用构造函数初始化。
对象像人一样,也是有类型的,常见的有值类型和引用类型。值类型位于线程的堆栈,而引用类型位于托管堆。例如农名工可以进城打工,工人可以回乡,在面向对象中称为装箱与拆箱。
person.ChangeName("Bob")
作为人我们都是有属性的,例如名字、年龄、籍贯。对象的字段、属性就是我们的标签,而方法就是操作标签的行为。所以对象的诞生与消亡,在某种程度上就是外界通过方法与对象交互,从而改变对象状态信息的过程。同时,人一出生,就必须通过语言交流,形成种种的关系,不同的对象发生着不同的交互,对象的交互方式被记录在“设计模式中."
对象的生存环境是CLR,而人的生存环境是社会。CLR提供了对象赖以生存的托管环境,制定一系列的规则,称为语法,类如类型、继承、多态、垃圾回收。而社会同样制定法律,规范,道德,帮助我们制约个体,维护社会。
人类社会就是系统架构,也是分层的。上层建筑代表政治和思想,通过社会契约和法律规范为经济基础服务。在对象世界中,这被称为接口。面向接口的编程就是以接口方式来抽象变化,从而形成体系。
由此课件,对象的旅行就是在一定的规则与约束下,通过方法进行彼此的交互操作,从而达到改变本身状态的目的。