关于类、对象、实例的关系我总结为上面的图
class:类别,比如“人”这一类
object:通过实例弄出来的一个具象的物件,比如:“bill”这个物件,属于“人”这一类
instance:具象对象的过程,比如:填充“人”这个类里面的属性域,最后形成“bill”这个人的过程,重点是过程,所以平常也叫实例化
但是我个人更加倾向于第二个图
class,说白了就是类型,就像上面说的“人”“猫”“狗”,是一个类型
object,是某个具有特别属性的物件,例如“bill”是人“tommy”也是人“jacky”同样是人,bill、tommy、jacky都具备同样的属性域,只不过这个属性域里面的值不一样,导致不同的物件表现的形式不一样
instance,我更喜欢把他翻译成具象化,把某个抽象的属性集合体“class”通过属性的填入,具象出来一个具体的物件
下面是具体的代码例子,请详细看注释
package com.ray.object;
/**
* 类、对象、实例的关系
*
* @author ray
* @since 2015-04-22
* @version 1.0
*
*/
//这里就是类,Person这一类,这一个类型可以具象化很多具有不同属性的物件
public class Person {
// 属性域
private String name;
private double age;
//通过下面的方法设置属性域,这个过程叫做实例
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getAge() {
return age;
}
public void setAge(double age) {
this.age = age;
}
@Override
public String toString() {
return "我是:"+getName()+"\n"+"我的年龄是:"+getAge();
}
public static void main(String[] args) {
//bill是对象,(个人比较喜欢翻译成物件,主要比较具象)
Person bill=new Person();
//下面这些设置属性的过程叫做实例,(个人比较喜欢翻译成具象化)
bill.setAge(30);
bill.setName("bill");
System.out.println(bill.toString());
}
}