一、概念
现在让我们深入了解什么是对象。对象是类的一个实例(具体例子),有状态和行为。
-
现实对象
例如,狗是一个类,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。 -
软件对象
软件对象也有状态和行为。软件对象的状态就是属性,行为通过方法体现。在软件开发中,方法操作对象内部状态的改变,对象的相互调用也是通过方法来完成。
二、构造方法和创建对象
对象是根据类创建的。在Java中,使用关键字new来创建一个新的对象。
创建对象需要以下三步:
- 声明:声明一个对象,包括对象名称和对象类型。
- 实例化:使用关键字new来创建一个对象。
Object referenceVariable = new Constructor();
- 初始化:使用new创建对象时,会调用构造方法初始化对象。
构造方法(构造器、构造函数)是一种特殊的方法,用于创建对象的时候初始化对象。
下面是一个创建对象的例子:
public class Puppy{
public Puppy(String name){
//这个构造器仅有一个参数:name
System.out.println("小狗的名字是 : " + name );
}
public static void main(String[] args){
// 下面的语句将创建一个Puppy对象
Puppy myPuppy = new Puppy( "tommy" );
}
}
编译并运行上面的程序,会打印出下面的结果:
小狗的名字是 : tommy
访问实例变量和方法
通过已创建的对象来访问成员变量和成员方法,如下所示:
三、访问对象成员
- 访问成员变量
referenceVariable.variableName;
- 调用成员方法
referenceVariable.methodName();
实例
下面的例子展示如何访问实例变量和调用成员方法:
public class Puppy{
int puppyAge;
public Puppy(String name){
// 这个构造器仅有一个参数:name
System.out.println("小狗的名字是 : " + name );
}
public void setAge( int age ){
puppyAge = age;
}
public int getAge( ){
System.out.println("小狗的年龄为 : " + puppyAge );
return puppyAge;
}
public static void main(String[] args){
/* 创建对象 */
Puppy myPuppy = new Puppy( "tommy" );
/* 调用成员方法来设定age */
myPuppy.setAge( 2 );
/* 调用另一个成员方法获取age */
myPuppy.getAge( );
//访问成员变量
System.out.println("变量值 : " + myPuppy.puppyAge );
}
}
编译并运行上面的程序,产生如下结果:
小狗的名字是 : tommy
小狗的年龄为 : 2
变量值 : 2