1. 程式人生 > >Java this關鍵字簡單理解

Java this關鍵字簡單理解

首先你要知道在一個類中無論是寫入方法還是屬性等,肯定是要被外界引用到的(private 等被保護的除外),要是想在類的外部呼叫方法或是屬性,需要一個引用型別指向一個new的物件,如HelloWorld h=new HelloWorld();中的“h”,但是如果你要想再一個類的內部使用該類的方法、屬性、構造器等,java提供了一個簡單的方法--this關鍵字。寫入一個例子看了就很好理解了。

public class Test01 {

	public String str = "test01";

	public String getStr() {
		return str;
	}

	public void setStr(String str) {
		// System.out.println(this);
		this.str = str;
	}
	public void getInfo(){
		System.out.println(this.str);
	}

}
</span>
<span style="font-size:14px;">public class Test01_main {
	public static void main(String [] args){
		Test01 t=new Test01();
		
		//在Test01類的內部,呼叫Test01類中的str屬性。
		t.getInfo();
		
		//在Test01_main類的中,呼叫Test01類中的str屬性。
		System.out.println(t.str);
		
		//對 Test01中的屬性進行更改
		t.setStr("new test01");
		
		//通過Test01類中檢視屬性
		t.getInfo();
		
		//通過外部方法檢視s屬性
		System.out.println(t.str);
	}
}</span>

結果:

test01
test01
new test01
new test01
從上面例子可以看出this 的作用是在類的內部呼叫本身類的方法或屬性。

剛開始是我對於this定義“代表呼叫該方法物件的引用”一直不理解是怎麼回事,看下面小例子

<span style="font-size:14px;">public class Test02 {
	public void getInfo(){
		System.out.println(this);
	}
	public static void main(String []args){
		Test02 t=new Test02();
		t.getInfo();
		System.out.println(t);
	}
}
</span>
結果:
<span style="font-size:14px;">[email protected]
[email protected]</span>
不多說從結果看出this和引用型別t的列印結果一樣。解釋了上面所說的一句話。

其實this關健字很好理解,別人的解釋也已經很到位了。但是需要注意一下幾點:

1、this一般是在方法體中使用。

2、它實現了在類的內部呼叫該類的方法或屬性。

3、在一個建構函式中呼叫本身的另一個建構函式。

4、當類沒有被new是,並不知道this指向的是哪個物件,所以不能與static一起使用,因為被static修飾的方法是隨類生成時生成的,不能被new。

相關推薦

Java this關鍵字簡單理解

首先你要知道在一個類中無論是寫入方法還是屬性等,肯定是要被外界引用到的(private 等被保護的除外),要是想在類的外部呼叫方法或是屬性,需要一個引用型別指向一個new的物件,如HelloWorld h=new HelloWorld();中的“h”,但是如果你要想再一個類

關於java中super與this簡單理解

       最近在學習java,遇到了關於super的一些問題,剛開始看到super是沒有一點概念,自己找了資料便研究了一下: 在Java中,有時會遇到子類中的成員變數或方法與父類中的成員變數或方法同名。因為子類中的成員變數或方法名優先順序高,所以子類中的同名成員變數或方

對於JavaScript中this關鍵字理解

決定 博客 rip script 答案 搜索 http 環境 return   這是我第二遍學this了,第一遍學的懵懵的。this指哪裏都是憑我一個男人的直覺然後控制臺輸出看看對不對。   剛查了書、博客、視頻。理解差不多了。畢竟菜雞me; 一、首先介紹下什麽是this

JAVA-this 關鍵字

screen get urn float pack java phone this關鍵字 封裝 this 關鍵字代表當前對象: this.屬性 ---操作當前對象的屬性; this.方法 ---調用當前對象的方法; 封裝對象的屬性時,經常會使用this關鍵字; eg

Java接口簡單理解

str 實現 IT ret https inpu spa () 簡單 1、接口: 接口成員變量默認聲明方式:public、static、final 接口成員方法默認聲明方式:public、abstract 1 public interface Interface_

java - this關鍵字

this關鍵字代表自身,在程式中主要的用途 1.用this在自身的構造方法內部呼叫其他的構造方法 2.用this代表自身類的物件 —直接使用this —使用this引用成員變數 —使用this呼叫成員方法 this的值是當前物件的引用,只能用它來呼叫屬於當前物件的方法或者使用this引用成員變數和

Java——this關鍵字

訪問類 遇到 屬性 就是 有效 指向 會有 查看 同名 前言 this關鍵字屬於Java中比較復雜的關鍵字之一,若是學習過C++或者其他的一些面向對象語言也會遇到this這個關鍵字並且都會看到this的含義就是表示當前對象。什麽叫做表示當前對象?this在Java中的用法

JAVA——this 關鍵字

this關鍵字的介紹 (一)this呼叫本類屬性 · 通過this關鍵字可以明確的去訪問一個類的成員變數,解決與區域性變數名稱衝突問題。 舉例如下: class Person2{ //方法 private String name; //構造方法 //引數名(即區域性變數)

重溫java this關鍵字

給大家推薦個靠譜的公眾號程式設計師探索之路,大家一起加油 1.     當成員變數和區域性變數重名時,在方法中使用this時,表示的是該方法所在類中的成員變數。(this是當前物件自己) public class Hello {

this關鍵字理解與總結

1.this關鍵字的含義 簡單說,this就是屬性或方法“當前”所在的物件。 this都有一個共同點:它總是返回一個物件。 舉例: var A = { name: '張三', describe: function () { return '姓名:'+ this.name; }

Java static關鍵字理解

今天在學習一些jvm記憶體劃分相關知識的時候涉及到了一些靜態變數的知識,回憶起來總覺得不夠系統,所以又複習總結了一下Java中static關鍵字的相關知識點。static關鍵字作為Java基礎知識中比較難理解的一個點,一直學習得不夠深刻,也比較容易遺忘,這篇部

Java —— this關鍵字和內部類

一、this關鍵字 (1)this關鍵字代表當前物件 (2)this.屬性 操作當前物件的屬性 (3)this.方法 呼叫當前物件的方法 二、關於內部類 1、基本概念:內部類就是定義在另外一個類裡面的類。與之對應,包含內部類的類被稱為外部類。 2、作

Java this關鍵字和super關鍵字

this關鍵字 this表示對當前物件的引用 一.在建構函式中,通過this可以呼叫同一類中別的建構函式。例如: public class OverLoad { public OverLoad() { this(1); System.out.println("

Java this關鍵字(呼叫屬性,呼叫方法,呼叫當前物件)

·呼叫屬性(程式碼示例): public class thisDemo01 { public static void main(String[] args) throws Exception {

js中對this關鍵字理解

this是Javascript語言的一個關鍵字。它代表函式執行時,自動生成的一個內部物件,只能在函式內部使用。 比如, 理解this指代什麼的關鍵點在與: 看這個this指的是區域性物件還是全域性物件(global)預設在”script”標籤中寫的成員變數和方

簡單理解java關鍵字native

java 不具備操作底層系統的內力,但可以通過JNI去呼叫可以操作底層系統的語言,如:C/C++。用native標記的方法表示此方法使用的本地的外部語言。需要呼叫本地的支援操作底層語言的函式。之所以我們很少看見native關鍵字是因為我們一直都在面向java開發。其實一些特殊的業務場景需要我們寫

java簡單類+this關鍵字用法

今天開始學習java,第一次自學其他語言,真是有些小興奮呢,這些與C++不同的特性或是不熟悉的特性都希望能將其記錄下來,日後便於查閱複習,順便見證下自己的成長軌跡,嘿嘿嘿。。。 今日問題 搞定 java簡單類是啥,咋用 this關鍵字三類用法

Java中通過this關鍵字呼叫構造方法的一些理解

  學習java時,理解的this關鍵字的實質是用來指向當前物件的一個指標。按照之前所學,理解它有以下三種用法加一個性質。1.在構造方法中使用this       關鍵字this可以出現在類的構造方法中,代表使用該構造方法所建立的物件。public class Tom {

Java學習 - 引出this關鍵字

比較 屬性註入 setter images 不能 技術分享 use 實例方法 局部變量 需求:定義一個User類,提供name,age字段,以及相應getter/setter方法。 並創建對象,設置name和age數據,在打印對象的name,age。 什麽是this: 表

2017.06.06-日記-面向對象-this關鍵字JAVA源文件結構

ret 實例 保存 傳參 導包 imp scan 創建 內存地址 這是今天的筆記,只是一些理論,後面有幾個練習一塊貼上來了, this:當前類的對象引用使用場合(都是類的內部):1.獲取實例本身 public A getA(){return this}2.獲取類的成員