Java之this關鍵字的用法

2021-01-13 彼岸end

給位小夥伴們大家好,在之前的文章中,小編有講過super關鍵字的用法Java之super關鍵字的用法。這次小編要介紹的是在Java當中this關鍵字的用法。

具體如下:

1.在本類的成員方法中,訪問本類的成員變量。

2.在本類的成員方法中,訪問本類的另一個成員方法。

3.在本類的構造方法中,訪問本類的另一個構造方法。

代碼如下:

public class MengNiu extends Demo01Mike {//子類繼承父類int price=19;//成員變量public MengNiu(){this(23); //構造方法,本類的無參構造調用本類的有參構造,構造方法的重載調用// this(22,24);報錯,this(……)調用必須是構造方法的第一個語句System.out.println("we");}public MengNiu(int x){//super();報錯,不會贈送this(1,2);//在構造方法中,this的用法//this(12.9);報錯,語法錯誤,this的調用必須是構造方法中的第一個語句System.out.println("啦啦啦");}public MengNiu(int m,int n){System.out.println("lqlqlqlq");}public MengNiu(double d){}

public void showPrice(){double price=19.9;System.out.println(price);//局部變量System.out.println(this.price);//在本類的成員方法中訪問本類中的成員變量。System.out.println(super.price);//父類中的成員變量}public void priceOne(){System.out.println(30);}public void priceTwo(){this.priceOne();//調用成員方法priceTwo的時候也同時調用priceOneSystem.out.println(35);}}

//定義一個父類mikepublic class Demo01Mike {double price=20.99;}

//main方法執行public class Demo01ExtendsFiled {public static void main(String[] args) {MengNiu mengNiu=new MengNiu();mengNiu.priceTwo();//30 35(調用成員方法priceTwo的時候也同時調用priceOne)mengNiu.showPrice();//19.9(局部變量) 19(本類中的成員變量) 20.99(父類中的成員變量)System.out.println(new MengNiu());//lqlqlqlq 啦啦啦 we(局部變量)}}

關於this關鍵字的作用還有用法,小編就先說到這裡。super關鍵字用來訪問父類的內容,this關鍵字用來訪問本類的內容。大家要注意的是在構造方法中,this(.......)調用必須是構造方法的第一個·語句。希望這篇文章可以幫到大家,也歡迎各位小夥伴補充和糾錯。

相關焦點

  • Java之super關鍵字的用法
    各為小夥伴們大家好,這次小編要介紹的是Java當中super關鍵字的用法,在上面的文章中小編有講過,super關鍵字是用來調用父類之間的成員變量和成員方法。現在小編來總結一下super關鍵字的用法。具體如下:1.在子類的成員方法中,訪問父類的成員變量。
  • Java transient關鍵字使用小記
    總之,java 的transient關鍵字為我們提供了便利,你只需要實現Serilizable接口,將不需要序列化的屬性前添加關鍵字transient,序列化對象的時候,這個屬性就不會序列化到指定的目的地中。
  • Java中volatile關鍵字概覽
    一、第一章 volatile關鍵字概覽多線程下變量的不可見性概述在多線程並發執行下,多個線程修改共享的成員變量,會出現一個線程修改了共享變量的值後,另一個線程不能直接 看到該線程修改後的變量的最新值。JMM(Java Memory Model):Java內存模型,是java虛擬機規範中所定義的一種內存模型,Java內存模型是標準化的,屏蔽掉了底層不同計算機的區別。Java內存模型(Java Memory Model)描述了Java程序中各種變量(線程共享變量)的訪問規則,以及在JVM中將變量存儲到內存和從內存中讀取變量這樣的底層細節。
  • Java面向對象之final、abstract抽象、和變量生命周期
    Java面向對象之final、abstract抽象、final修飾符finalclass代碼顯示錯誤,無法從SuperClass繼承,編譯器提示刪除final關鍵字;刪除final關鍵字後,代碼正確無誤。
  • Java之static靜態關鍵字詳解
    我們知道,當我們通過new關鍵字去創建對象的時候,那麼數據的存儲空間才會被分配,類中的成員方法才能被對象所使用。但是呢有兩種特殊的情況:1、我們通過new關鍵字創建的對象共享同一個資源,而不是說每個對象都擁有自己的數據,或者說根本就不需要去創建對象,這個資源和對象之間是沒有關係的。2、希望某個方法不與包含它的類的任何對象聯繫在一起。
  • Java之Random類的簡單介紹
    第一步,導包:import java.util.Random第二步,創建:Random a=new Random();小括號是可以留空的第三步,使用:如果要獲取一個隨機數int數字(範圍是int所有範圍,有正負兩種):int num=a.nextInt();為了方便大家的理解,小編就先粘幾行代碼,是一個比較簡單的猜數字小遊戲,代碼如下:
  • 打工人打工魂,打工的必會java調用python的幾種用法
    本文轉載自【微信公眾號:五角錢的程式設計師,ID:xianglin965】,經微信公眾號授權轉載,如需轉載與原文作者聯繫圖丨pexelsjava調用python的幾種用法(看這篇就夠了)在java類中直接執行python語句準備工作:創建maven工程,結構如下:到官網https://www.jython.org
  • DSP編程技巧之17---非常「關鍵」的關鍵字
    什麼是「關鍵字」?關鍵字就是已被C語言本身使用,不能作其它用途使用的字,例如關鍵字不能用作變量名、函數名等。那「關鍵字」到底有多關鍵?簡單得說,就是如果不掌握它們的使用方法,程序就不能按照我們的設計產生預期的結果。
  • Java面向對象之接口——interface
    Java面向對象之接口——interface什麼是接口一般計算機中的接口分為如: Walkable.java以I開頭表示接口,如:IWalkable.java接口在編譯成功之後,和類一樣,也是.class的字節碼文件。
  • JAVA map的用法/如何遍歷MAP
    第一步,,要引入它所在JAR—— 可以在JAVA類裡直接引入import java.util.*;  這樣until下的所有接口都可以調用,還有常用到的是List.整體測試方法:package zy.until;import java.util.HashMap;import java.util.Iterator;import java.util.Map;import java.util.Set
  • 2020年Java基礎高頻面試題匯總
    5、instanceof 關鍵字的作用instanceof 嚴格來說是Java中的一個雙目運算符,用來測試一個對象是否為一個類的實例,用法為:Boolean result = obj instanceof Class其中 obj 為一個對象,Class 表示一個類或者一個接口
  • Python 為啥沒有 void 關鍵字呢
    void 是程式語言中最常見的關鍵字之一,從字面上理解,它是「空的、空集、空白」的意思,最常用於表示函數的一種返回值類型。標題中的問題可以進一步分解成兩個:· 其它語言為什麼要使用 void 關鍵字?· Python 為什麼不設計出 void 關鍵字?
  • Java程式設計師必備基礎:Java代碼是怎麼運行的?
    java源文件編譯為class字節碼 類加載器把字節碼加載到虛擬機的方法區。但是java是一門面向對象的高級語言,它不僅語法非常複雜,抽象程度也非常高,並不能直接運行在計算機硬體機器上。 Java虛擬機(Java Virtual Machine 簡稱JVM)是運行所有Java程序的抽象計算機,是Java語言的運行環境。
  • Java之抽象方法的使用與及接口中抽象方法的簡單介紹
    public interface 接口名稱{//接口內容}備註:換成關鍵字interface之後,編譯生成的字節碼文件仍然是:.java-->.class接口中包含的內容有//這也是抽象方法abstract void methodAbs1();//這也是一個抽象方法void methodAbs2();}注意事項:1.接口當中的抽象方法,修飾符必須是兩個固定關鍵字
  • Java基礎-instanceof用法揭秘
    Otherwise the result is false.註:在運行期,如果關係表達式不為空,並且類型轉換時不會拋出ClassCastException異常時,instanceof表達式返回結果為真,否則結果為假牽線之亂點鴛鴦譜如果沒有任何關係的兩個類使用 instanceof 會如何?
  • JAVA專業術語面試100問
    4、java有哪些基本數據類型?5、數組有沒有length()方法?String有沒有length()方法?數組沒有length()方法,它有length屬性。String有length()方法。17、java中的throw 和 throws關鍵字有什麼區別?18、列舉幾個你了解的幾個常見的運行時異常?19、final, finally, finalize有什麼區別?20、描述Java內存模型?
  • 必學——Java抽象類、接口、多態
    1、用關鍵字abstract修飾類稱為abstract類(抽象類)abstract class A{ …}abstract(1)、接口的聲明與使用接口通過使用關鍵字interface來聲明,格式:interface 接口的名字{}(2)、一個類通過使用關鍵字implements 聲明自己實現一個或多個接口。
  • 跟我學java編程—Java邏輯運算符
    示例1:邏輯運算符在D盤Java目錄下,新建「LogicSample.java」文件。用記事本打開「LogicSample.java」文件,輸入以下代碼:代碼結構分析程序功能主要是演示邏輯運算符的用法。類似語句「bJudge = !
  • Java編程中基礎反射詳細解析
    類加載指的是將類的class文件讀入內存中,並為之創建一個 java.lang.Class對象,也就是說程序使用任何類的時候,都會為其創建一個class對象。1.2 類的連接類被加載之後,系統會為之生成一個Class對象,接著會進入連接階段,連接階段負責把類的二進位數據合併到JRE中。
  • 零基礎java入門教程函數function實例化格式案例void返回值說明
    java基礎自學入門:函數:定義在類中的具有特定功能的一段獨立小程序有時候我們函數也稱為方法,平時我們聽到的函數也就是方法,方法也是函數,每個人的叫法不同,所以這裡要切記。老程式設計師別露餡喲。將這個部分定義成一個獨立的功能,方便與日後使用java中對功能的定義是通過行數的形式來體現的,需要定義功能,完成一個整數*3+5的運算並列印結果