Java——对象

1.2对象

1.2.1 对象的创建和使用

①使用new + 构造器创建一个新的对象;

②使用“对象名.对象成员”的方式访问对象成员(包括属性和方法)。

public class Animal {

  public int legs;        

  public void  eat(){

    System.out.println(“Eating.”);

  }

  public viod move(){

      System.out.println(“Move.”);

 }

}

public class Zoo{

   public static void main(String args[]){

     Animal xb=new Animal();

     xb.legs=4;

     System.out.println(xb.legs);

     xb.eat();

     xb.move();

   }

}

1.2.2 对象的产生

当一个对象被创建时,会对其中各种类型的成员变量自动进行初始化赋值。除了基本数据类型之外的变量类型都是引用类型,如下面的Person及前面讲过的数组。

class Person{

       int age;

       void shout(){

              System.out.println(“oh,my god! I am ” + age);

       }

}

Person p1 = new Person();//执行完后的内存状态

 

 

1.2.3 对象的使用

class TestPerson{

       public static void main(String[] args) {   //程序运行的内存布局如下图

              Person p1 = new Person();

              Person p2 =new Person();

              p1.age = -30;

              p1.shout();

              p2.shout();

       }}

1.2.4 对象的生命周期

 

 

1.2.5 对象的内存结构

练习:根据代码,画出内存图

class Car{

       String color = "red";

       int num = 4;

       void show(){

           System.out.println("color="+color+"..num="+num);

        }

  }

class TestCar {

       public static void main(String[] args) {

              Car c1 = new Car();   //建立对象c1

              Car c2 = new Car();   //建立对象c2

              c1.color = "blue";   //对对象的属性进行修改

              c1.show();   //使用对象的方法

              c2.show();

       } 

}

 

 

1.2.6 匿名对象

①我们也可以不定义对象的句柄,而直接调用这个对象的方法。这样的对象叫做匿名对象。

如:new Person().shout();

②使用情况

如果对一个对象只需要进行一次方法调用,那么就可以使用匿名对象。我们经常将匿名对象作为实参传递给一个方法调用。

posted @ 2019-11-04 16:03  阿江是个程序猿  阅读(241)  评论(0编辑  收藏  举报