Java中的对象 - 以及任何其他“面向对象” 语言 - 是所有Java应用程序的基本构建块,代表您可能在您身边找到的任何现实世界对象:苹果,猫,汽车或人类。
对象始终具有的两个特征是状态和行为。考虑一个人物。它的状态可能包括头发的颜色,性别,身高和体重,还有愤怒,沮丧或爱的感觉。它的行为可能包括步行,睡觉,烹饪,工作或其他任何人可能做的事情。
对象构成了任何面向对象编程语言的核心。
什么是面向对象编程?
已经编写了数百本书来描述面向对象编程的复杂性,但基本上,OOP基于强调重用和继承的整体方法,简化了开发时间。更传统的过程语言,如Fortran,COBOL和C,采用自上而下的方法,将任务或问题分解为逻辑有序的一系列函数。
例如,考虑银行使用的简单ATM应用程序。在编写任何代码之前,Java开发人员首先会创建路线图或计划如何继续,通常从需要创建的所有对象的列表以及它们将如何交互开始。开发人员可以使用类图来阐明对象之间的关系。ATM交易中使用的对象可能是货币,卡,余额,收据,提款,存款等。这些对象需要协同工作才能完成交易:例如,存款应该会产生余额报告,也许还会产生收据。对象将在它们之间传递消息以完成任务。
对象和类
对象是类的一个实例:这是面向对象编程的关键和重用的概念。在对象可以存在之前,必须存在它可以基于的类。
也许我们想要一本书对象:准确地说,我们想要一本书“银河系漫游指南”。我们首先需要创建一个类Book。这堂课可以成为世界上任何一本书的基础。
它可能看起来像这样:
public class Book {
String title;
String author;
//methods
public String getTitle(
{
return title;
}
public void setTitle()
{
return title;
}
public int getAuthor()
{
return author;
}
public int setAuthor()
{
return author;
}
// etc.
}
类Book有一个标题和一个作者,其方法允许您设置或获取这些项中的任意一个(它也有更多的元素,但是这个示例只是一个摘录)。但这还不是一个对象——Java应用程序还不能用它做任何事情。它需要实例化才能成为一个可以使用的对象。
创建一个对象
对象和类之间的关系是这样的:一个类可以创建多个对象。每个对象都有它自己的数据,但是它的底层结构(例如,它存储的数据类型及其行为)由类定义。
我们可以从book类创建几个对象。每个对象都被称为类的实例。
Book HitchHiker = new Book("The HitchHiker's Guide to the Galaxy", "Douglas Adams");
Book ShortHistory = new Book("A Short History of Nearly Everything", "Bill Bryson");
Book IceStation = new Book("Ice Station Zebra", "Alistair MacLean");
现在可以使用这三个对象:它们可以被读取、购买、借用或共享。