麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

淺談 Java 中 this 的使用

2019-11-18 13:13:09
字體:
來源:轉載
供稿:網友

  1. this是指當前對象自己
  當在一個類中要明確指出使用對象自己的的變量或函數時就應該加上this引用。如下面這個例子中:
  
  public class A {
  
  String s = "Hello";
  
  public A(String s) {
  System.out. this.s = " + this.s);
  this.s = s;
  System.out.println("2 -> this.s = " + this.s);
  }
  
  public static void main(String[] args) {
  new A("HelloWorld!");
  }
  }
  
  運行結果:
  
  s = HelloWorld!
  1 -> this.s = Hello
  2 -> this.s = HelloWorld!
  
  在這個例子中,構造函數A中,參數s與類A的變量s同名,這時假如直接對s進行操作則是對參數s進行操作。若要對類A的變量s進行操作就應該用this進行引用。運行結果的第一行就是直接對參數s進行打印結果;后面兩行分別是對對象A的變量s進行操作前后的打印結果。
  
  2. 把this作為參數傳遞
  當你要把自己作為參數傳遞給別的對象時,也可以用this。如:
  
  public class A {
  public A() {
  new B(this).print();
  }
  
  public void print() {
  System.out.println("Hello from A!");
  }
  }
  
  public class B {
  A a;
  public B(A a) {
  this.a = a;
  }
  
  public void print() {
  a.print();
  System.out.println("Hello from B!");
  }
  }
  
  運行結果:
  Hello from A!
  Hello from B!
  
  在這個例子中,對象A的構造函數中,用new B(this)把對象A自己作為參數傳遞給了對象B的構造函數。
  
  3. 注重匿名類和內部類中的中的this
  有時候,我們會用到一些內部類和匿名類。當在匿名類中用this時,這個this則指的是匿名類或內部類本身。這時假如我們要使用外部類的方法和變量的話,則應該加上外部類的類名。如下面這個例子:
  
  public class A {
  int i = 1;
  
  public A() {
  Thread thread = new Thread() {
  public void run() {
  for(;;) {
  A.this.run();
  try {
  sleep(1000);
  } catch(InterruptedException ie) {
  }
  }
  }
  };
  thread.start();
  }
  
  public void run() {
  System.out.println("i = " + i);
  i++;
  }
  
  public static void main(String[] args) throws Exception {
  new A();
  }
  
  }
  
  在上面這個例子中, thread 是一個匿名類對象,在它的定義中,它的 run 函數里用到了外部類的 run 函數。這時由于函數同名,直接調用就不行了。這時有兩種辦法,一種就是把外部的 run 函數換一個名字,但這種辦法對于一個開發到中途的應用來說是不可取的。那么就可以用這個例子中的辦法用外部類的類名加上 this 引用來說明要調用的是外部類的方法 run。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 久久99精品久久久久久园产越南 | 亚洲操比视频 | 免费h片| 羞羞视频免费观看网站 | 国产一区二区亚洲 | 在线视频 日韩 | aa久久| 高清一区二区在线观看 | 黄色成人av在线 | av在线免费看网址 | 久草视频在线资源 | 国产做爰 | 欧美成人午夜一区二区三区 | 久久艹逼 | 久久综合伊人 | 一本色道久久久888 香蕉视频99 | 国产精品区一区二区三区 | 欧美一级黄色影院 | 高清av在线 | 国色天香综合网 | 国产在线精品区 | 日韩激情 | 激情小说激情电影 | 国产精品99久久久久久久女警 | 国产大片中文字幕在线观看 | av在线电影网站 | 日本最新免费二区三区 | 91成人一区 | av观看国产| 国产电影av在线 | 久久福利小视频 | 性aaa| www国产网站 | 国产99久久精品 | 亚洲第一页在线观看 | 亚洲性在线视频 | 国产资源视频在线观看 | 另类亚洲孕妇分娩网址 | 日韩av电影免费看 | av大全在线免费观看 | lutube成人福利在线观看 |