title: how does SurfaceView class functions work when their function defination is empty?
body: <p>i am new to android .
  i was working with android canvas and i wonder how does SurfaceView class functions work when their function defination is empty in the android source code .Here is the android surface view class source code </p>
  
  <pre><code>package android.view;
  
  import com.android.layoutlib.bridge.MockView;
  
  import android.content.Context;
  import android.graphics.Canvas;
  import android.graphics.Rect;
  import android.util.AttributeSet;
  
  
  public class SurfaceView extends MockView {
  
  public SurfaceView(Context context) {
      this(context, null);
  }
  
  public SurfaceView(Context context, AttributeSet attrs) {
      this(context, attrs , 0);
  }
  
  public SurfaceView(Context context, AttributeSet attrs, int defStyle) {
      super(context, attrs, defStyle);
  }
  
  public SurfaceHolder getHolder() {
      return mSurfaceHolder;
  }
  
  private SurfaceHolder mSurfaceHolder = new SurfaceHolder() {
  
      @Override
      public boolean isCreating() {
          return false;
      }
  
      @Override
      public void addCallback(Callback callback) {
      }
  
      @Override
      public void removeCallback(Callback callback) {
      }
  
      @Override
      public void setFixedSize(int width, int height) {
      }
  
      @Override
      public void setSizeFromLayout() {
      }
  
      @Override
      public void setFormat(int format) {
      }
  
      @Override
      public void setType(int type) {
      }
  
      @Override
      public void setKeepScreenOn(boolean screenOn) {
      }
  
      @Override
      public Canvas lockCanvas() {
          return null;
      }
  
      @Override
      public Canvas lockCanvas(Rect dirty) {
          return null;
      }
  
      @Override
      public void unlockCanvasAndPost(Canvas canvas) {
      }
  
      @Override
      public Surface getSurface() {
          return null;
      }
  
      @Override
      public Rect getSurfaceFrame() {
          return null;
      }
  };
  }
  </code></pre>
  
  <p>so how does this work when we write </p>
  
  <pre><code>canvas c = holder.lockCanvas(null); 
  </code></pre>
  
  <p>or</p>
  
  <pre><code>holder.unlockCanvasAndPost(c);
  </code></pre>
  
  <p>when we have nothing in source code to process.. i mean where is the code to get the work done. if help me find it..</p>