基础之石——类、对象
大家在学习JAVA或者C++这类面向对象编程语言之前,前辈(或老师)一定会向我们解释说明什么是类,什么是对象,以及类与类、类与对象之间存在什么关系。接下来我将分两篇博文来解释说明这两种关系。第一篇博文只要侧重于解释什么是类、对象以及OOP编程,另一篇博文侧重于类的继承的相关内容。
在接触的C、C++语言之后,我了解到有两种大家比较常用的编程语言类型,即POP与OOP。一开始我完全无法辨析这两种类型的语言,之后经过一段时间的积累,终于对此有了一些理解:面向过程是一种以过程为中心的编程思想,以一个实例来说明这一思想就是列举出实现功能的一个个表单,而你却需要自己一步步地去实现它;面向对象是一种以对象为中心的编程思想,相当于你只需要找到能够完成这个功能的对象,告诉他并让他实现这个功能即可。
在现实生活中,我们每一个人都是一个对象,路边上的一株小草是一个对象,家中趴着的小狗是一个对象。那么到底什么是对象呢?以一个人为例,他能说话、吃饭、走路的行为并且他有自己的外貌、名字、身高等属性,以此看来一个对象是具有一定的行为和属性的。当这些具有相同属性、行为的对象组成一个整体就构成了一个类。但是某个对象的特殊属性在类的属性与行为却不一定含有,类具有所有对象的公共属性与方法。上面所说的是从对象看类(自底向上),但是为了编程需求,我们可以从类看对象。类是对所有对象的定义,通过类可以创建对象;对象是真真实实存在的一个实体,具有明确定义的状态和行为。
接下来的代码将向大家展示面向对象编程的形式:
/**
* 定义一个Dogs类,并创建一个dog对象,定义其属性值,调用其方法
* @author Daily
*
*/
public class Dogs {
// 声明Dogs类的属性
public int weight; // 体重
public String sex; // 性别
public int age; // 年龄
public String location; // 住址
public String name;
//......其他属性值均可设置
/** 主函数
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Dogs dog = new Dogs();
dog.weight = 32;
dog.sex = "female";
dog.age = 7;
dog.location = "";
dog.eating();
dog.walking();
dog.sleeping();
}
/**
* Dogs吃东西的行为(方法/动作)
*/
public void eating(){
System.out.println("汪汪!!主人我饿了,我要吃肉~~~~~~");
}
/**
* Dogs散步的行为(方法/动作)
*/
public void walking(){
System.out.println("[蹭~]吃饱了,咱们出去散步吧~~~保持好身材!我是乖狗狗~");
}
public void sleeping(){
System.out.println("=_=终于回来了,我要睡觉!睡觉!!!");
}
}