java面向对象的理解

如题所述

第1个回答  2011-02-25
比如说,我们要用程序来描述一个人。如果是以往的结构化编程,我们可能会这样;
例如用C语言的话,可能会建立一个结构体:
struct Person{
姓名;
年龄;
等等;...
}
然后用定义的一些函数来描述他的行为。比如void walk(struct p); void eat(struct p);等等。
然后使用 walk(p) 来描述行走,使用eat(p)来描述吃饭等。
这样不利于程序结构的维护。开发效率也不高。

但是用java面向对象方式,这一切就显得自然了。我们建立一个类,表示人:
class Person{
姓名
性别
体重
身高等..(人类都有的属性)
吃饭
睡觉 等行为(也就是人类都有的行为)
}

然后将类产生一个实例,就产生了一个'人'的对象。
Person xiaobai = new Person("小白",身高,体重...等参数);

如果要描述祖先后代的关系,很简单。只要让人类继承自Animal即可。
class Animal{
......
}

class Person extends Animal{
.......
}

这样动物有的属性和行为,人不用定义也可以拥有,符合自然规律~哈哈

面向对象不是java特有的,只是一种思想,如果你愿意,用结构化语言C语言也可以写出面向对象的代码。
相似回答