首页 > java ?实例的困惑

java ?实例的困惑

请看如下两段代码:

第一段:

class Car
{
   private int curSpeed;
   private int maxSpeed;

   /** Create a new car object, but only if we are given the values we
    ** need to initialize our new object into a consistent  state.
    ** @param c Current speed of the car.
    ** @param m Maximum speed of the car.
    */
   public Car(int c, int m)
   {
      curSpeed = c;
      maxSpeed = m;
    }
  }
class CarDemo{
public static void main(String[],args){
Car a=new Car(2,10);
    }
}

第二段:

class Vehicle{
int passengers;
int speed;
}
class VehicleDemo{
public static void main(String[],args){
Vehicle a=new Vehicle();
a.speed=5;
}

第一段里我不懂public Car是什么,是方法吗?这不是实例啊,我知道可能是因为成员变量是private 使得在别的class里无法访问了,所以用public Car(int c,int m)在另一个demo类里来赋值?
第二段:Vehicle a=new Vehicle();这到底是实例(instance)还是对象(object)?


你是新手吧?


public Car()是构造方法,构造方法的特性是:于类同名,没有返回值,当没有定义构造方法时会有个自带的构造方法,当定义了构造方法会把隐藏的构造方法覆盖掉。
二、我没看懂你问的,不知道你是想问 a 的类型是Object还是是一个对象,a 是Vehicle的实例对象。


1、public Car(){} 是构造函数,是一种特殊的方法,一个类中可以定义多个构造函数。定义了构造函数之后,我们可以使用new 关键字来创建一个实例。

成员变量是private,别的类也可以通过反射的方式来访问这个成员变量的。

2、Vehicle a=new Vehicle() 中,a 是一个实例,它是对象 Vehicle 的一个具体实例。

【热门文章】
【热门文章】