Java程序想要完成具体的功能,仅有类是远远不够的,还需要根据类创建实例对象。在例2-1中已经创建了Cat类和Mouse类,但是如果要实现“猫抓老鼠”,就必须得有一只具体的猫和一只具体的老鼠才行。我们给这只具体的猫起个名字叫“喵喵”,给这只具体的老鼠起名叫“吱吱”。如何创建“喵喵”和“吱吱”呢?
Java语言中,使用new 关键字来创建对象,具体格式如下:
用Cat类创建一个cat对象:
其中“new Cat()”用于创建Cat类的一个实例对象,“Cat cat”则是声明了一个Cat类型的引用变量cat。中间的等号用于将Cat对象在内存中的地址赋值给变量cat,这样变量cat便持有了对象的引用。为了简化描述,通常会将变量cat引用的对象简称为cat对象。在内存中,变量cat和对象(new Cat())之间的引用关系如图2-1所示。
图2-1 cat和new Cat()的内存分析(www.xing528.com)
对象cat的命名除了要遵循Java标识符的命名规则外,还需要注意两点:第一,对象名的首字母要小写。第二,对象名也要遵守“驼峰”原则,当对象名由多个单词组成时,除第一个单词首字母小写外,其余单词的首字母都要大写,如studen Name等。
类是对象的模板,通过该模板就能创建一个一个具体的对象。换句话说,使用Cat类可以创建无数个对象,如:
上述语句用Cat类创建了cat1、cat2和cat3三个不同的对象。当用Cat类创建了cat1、cat2和cat3 三个对象之后,cat1、cat2 和cat3 就都具有了Cat类中定义的name 属性和catch Mouse行为。那么,我们如何区分cat1、cat2和cat3呢?
在前面提到过,不管是张三家的猫还是李四家的猫都有自己的名字,不同的是张三家的猫叫“花花”,李四家的猫叫“喵喵”。那么名字是属性,而“花花”、“喵喵”是属性的值。能够把不同对象区分开的恰恰是属性的值。
那么,如何给对象的属性赋值呢?这就涉及对象的使用。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。