0

我是 Android 新手,但我知道Javascript所以我对面向对象编程有一定的了解。

在这一行:

Resources myResources = getResources();
AnimationDrawable androidAnimation;
androidAnimation = 
  (AnimationDrawable)myResources.getDrawable(R.drawable.frame_by_frame); 
  1. androidAnimation 是由 AnimationDrawable 类初始化的新对象吗?
  2. 在 (AnimationDrawable)myResources 中,类在括号中的语法是什么?
4

1 回答 1

2
  1. androidAnimation。不是一个对象。它是指向AnimationDrawable类实例的引用。

    在以下object creation陈述和分配中:-

    MyClass obj = new MyClass();
    
    • RHS 的价值 -new MyClass()创建一个object.
    • LHS 上的值 -MyClass obj创建对该对象的引用。

  2. 这被称为typecasting。这样做是因为reference type该方法调用返回的可能与reference type on LHS. 因此,需要进行类型转换以使其兼容。

有关这些概念的更多详细信息,请参阅JLS:-

于 2012-11-06T08:24:38.167 回答