基本概念
类和对象是面向对象中的两个基本概念
“类”指的是一类事物,是一个抽象的概念
“对象”指的是属于某个类的一个实体,是一个具体存在的事物
类是一种“模版”,可以通过这种模版创建出不同的对象“实例”
对象“实例”是类“模版”的一个具体实现
一个类可以有很多对象,而一个对象必然属于某个类
先说一个概念,老虎,我们都知道老虎是一个什么样的东西把
我们在老虎这个类里面分,分三种典型的类型,华南虎,东北虎和孟加拉虎,又分为了3类
华南虎又有很多,我怎么知道你说的哪个呢,那就有很多了,比如你成都动物园有个华南虎有个叫花花,我们就具体知道哪一只老虎了。这张图最后一行,所有的老虎都指的是具体的一只老虎,我们第二行,华南虎、东北虎、孟加拉虎都是一个抽象的概念,。
黄色的是类,下面粉红色的是对象
类用于抽象的描述一类事物所特有的属性和行为
如:电脑类的每个对象都有CPU,内存和硬盘,电脑类的每个对象都可以开机和运行程序
对象是一个具体的事物,拥有其所属类的所有属性,并且每个属性都是一个特有的值
如:老虎的每个对象(也就是每只老虎),都有不同的体系。不同食量以及不同的性情
类之间的关系
根据生活中的经验,我们可以把事物进行分类,类之间的界限一般都是很清晰的,如电脑类和老虎类
但是一些类可以再细分,如电脑类可以再分为Dell类,sony类以及HP类等等
从一个类细分出来的类和原来的类之间都是有关系的,这种关系叫做继承,如HP类继承了电脑类,可以拥有自己的属性
继承的类拥有原类的所有属性,如HP电脑就是一种电脑,HP电脑也同样的拥有CPU,内存和硬盘
深入理解类
不但可以抽象的描述一类事物的属性,也可以抽象的描述一类事物的行为
从同一个类细分出来的类不但继承了原有类的属性同时也继承了原有类的行为
继承出来的新类可以拥有自己特有的属性和行为
属性主要是用于描述类的静态特性,行为主要用于描述类的动态特性
如:老虎类的属性有颜色、体重,而行为有捕猎和逃跑,而兔子类的属性也有颜色和体重,但是兔子类的行为没有捕猎,只有逃跑
另外,从一个更高的层面看。老虎和兔子都属于动物类,他们都继承了动物类的属性和行为,另外又有自己特定的属性和行为
深入理解对象
对象是一个类的实例,所谓实例即一个类中的特点的事物
一个类可以有多个实例,并且这些实例之间是互不相同的
如人这个类中有几十亿个个体,每个人都是人这个类的一个实例
对象和类的关系如同模具和成品的关系,类就是一个模具,利用这个墨镜可以生成多个不同的成品,而这些成品就是各不相同的对象
同一个类的不同对象都有对应的类中的属性和行为,但是这些属性和行为可能不完全相同
变量表示属性,行为表示函数
在JAVA程序中创建对象
程序中表示事物的方法只有变量
所以在JAVA中只能以变量的方式表示一个类的对象
直观的看创建一个对象,那么这个对象必然是“新的”
所以。。。。
public class test{
public static void main(String[] args)
{
禽兽 灰太浪=new 禽兽;
人类 大傻=new 人类();
}
}