内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

如何解析Java構(gòu)造器原理及用法-創(chuàng)新互聯(lián)

今天就跟大家聊聊有關(guān)如何解析Java構(gòu)造器原理及用法,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

創(chuàng)新互聯(lián)建站主營同江網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,手機(jī)APP定制開發(fā),同江h(huán)5微信小程序開發(fā)搭建,同江網(wǎng)站營銷推廣歡迎同江等地區(qū)企業(yè)咨詢

導(dǎo)讀

構(gòu)造器是編程的強(qiáng)大組件。使用它們來釋放 Java 的全部潛力。

在開源、跨平臺編程領(lǐng)域,Java 無疑(?)是無可爭議的重量級語言。盡管有許多偉大的跨平臺框架,但很少有像 Java 那樣統(tǒng)一和直接的。

當(dāng)然,Java 也是一種非常復(fù)雜的語言,具有自己的微妙之處和慣例。Java 中與構(gòu)造器 constructor有關(guān)的最常見問題之一是:它們是什么,它們的作用是什么?

簡而言之:構(gòu)造器是在 Java 中創(chuàng)建新對象object時執(zhí)行的操作。當(dāng) Java 應(yīng)用程序創(chuàng)建一個你編寫的類的實(shí)例時,它將檢查構(gòu)造器。如果(該類)存在構(gòu)造器,則 Java 在創(chuàng)建實(shí)例時將運(yùn)行構(gòu)造器中的代碼。這幾句話中包含了大量的技術(shù)術(shù)語,但是當(dāng)你看到它的實(shí)際應(yīng)用時就會更加清楚,所以請確保你已經(jīng)安裝了 Java 并準(zhǔn)備好進(jìn)行演示。

沒有使用構(gòu)造器的開發(fā)日常

如果你正在編寫 Java 代碼,那么你已經(jīng)在使用構(gòu)造器了,即使你可能不知道它。Java 中的所有類都有一個構(gòu)造器,因?yàn)榧词鼓銢]有創(chuàng)建構(gòu)造器,Java 也會在編譯代碼時為你生成一個。但是,為了進(jìn)行演示,請忽略 Java 提供的隱藏構(gòu)造器(因?yàn)槟J(rèn)構(gòu)造器不添加任何額外的功能),并觀察沒有顯式構(gòu)造器的情況。

假設(shè)你正在編寫一個簡單的 Java 擲骰子應(yīng)用程序,因?yàn)槟阆霝橛螒蛏梢粋€偽隨機(jī)數(shù)。

首先,你可以創(chuàng)建骰子類來表示一個骰子。你玩了很久《龍與地下城》,所以你決定創(chuàng)建一個 20 面的骰子。在這個示例代碼中,變量 dice 是整數(shù) 20,表示可能的較大擲骰數(shù)(一個 20 邊骰子的擲骰數(shù)不能超過 20)。變量 roll 是最終的隨機(jī)數(shù)的占位符,rand 用作隨機(jī)數(shù)種子。

import java.util.Random;public class DiceRoller { private int dice = 20; private int roll; private Random rand = new Random();

接下來,在 DiceRoller 類中創(chuàng)建一個函數(shù),以執(zhí)行計(jì)算機(jī)模擬模子滾動所必須采取的步驟:從 rand 中獲取一個整數(shù)并將其分配給 roll變量,考慮到 Java 從 0 開始計(jì)數(shù)但 20 面的骰子沒有 0 值的情況,roll 再加 1 ,然后打印結(jié)果。

import java.util.Random;public class DiceRoller { private int dice = 20; private int roll; private Random rand = new Random();

最后,產(chǎn)生 DiceRoller 類的實(shí)例并調(diào)用其關(guān)鍵函數(shù) Roller:

// main looppublic static void main (String[] args) { System.out.printf("You rolled a "); DiceRoller App = new DiceRoller(); App.Roller(); }}

只要你安裝了 Java 開發(fā)環(huán)境(如 OpenJDK),你就可以在終端上運(yùn)行你的應(yīng)用程序:

$ java dice.javaYou rolled a 12

在本例中,沒有顯式構(gòu)造器。這是一個非常有效和合法的 Java 應(yīng)用程序,但是它有一點(diǎn)局限性。例如,如果你把游戲《龍與地下城》放在一邊,晚上去玩一些《快艇骰子》,你將需要六面骰子。在這個簡單的例子中,更改代碼不會有太多的麻煩,但是在復(fù)雜的代碼中這不是一個現(xiàn)實(shí)的選擇。解決這個問題的一種方法是使用構(gòu)造器。

構(gòu)造函數(shù)的作用

這個示例項(xiàng)目中的 DiceRoller 類表示一個虛擬骰子工廠:當(dāng)它被調(diào)用時,它創(chuàng)建一個虛擬骰子,然后進(jìn)行“滾動”。然而,通過編寫一個自定義構(gòu)造器,你可以讓擲骰子的應(yīng)用程序詢問你希望模擬哪種類型的骰子。

大部分代碼都是一樣的,除了構(gòu)造器接受一個表示面數(shù)的數(shù)字參數(shù)。這個數(shù)字還不存在,但稍后將創(chuàng)建它。

import java.util.Random;public class DiceRoller { private int dice;  private int roll; private Random rand = new Random(); // constructor public DiceRoller(int sides) {  dice = sides; }

模擬滾動的函數(shù)保持不變:

public void Roller() { roll = rand.nextInt(dice); roll += 1; System.out.println (roll);}

代碼的主要部分提供運(yùn)行應(yīng)用程序時提供的任何參數(shù)。這的確會是一個復(fù)雜的應(yīng)用程序,你需要仔細(xì)解析參數(shù)并檢查意外結(jié)果,但對于這個例子,的預(yù)防措施是將參數(shù)字符串轉(zhuǎn)換成整數(shù)類型。

public static void main (String[] args) { System.out.printf("You rolled a "); DiceRoller App = new DiceRoller( Integer.parseInt(args[0]) ); App.Roller();}

啟動這個應(yīng)用程序,并提供你希望骰子具有的面數(shù):

$ java dice.java 20You rolled a 10$ java dice.java 6You rolled a 2$ java dice.java 100You rolled a 44

構(gòu)造器已接受你的輸入,因此在創(chuàng)建類實(shí)例時,會將 sides 變量設(shè)置為用戶指定的任何數(shù)字。

構(gòu)造器是編程的功能強(qiáng)大的組件。練習(xí)用它們來解開了 Java 的全部潛力。

看完上述內(nèi)容,你們對如何解析Java構(gòu)造器原理及用法有進(jìn)一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。

分享文章:如何解析Java構(gòu)造器原理及用法-創(chuàng)新互聯(lián)
文章鏈接:http://www.rwnh.cn/article42/hogec.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供標(biāo)簽優(yōu)化、做網(wǎng)站網(wǎng)站營銷、網(wǎng)站改版、虛擬主機(jī)面包屑導(dǎo)航

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站建設(shè)
临猗县| 金山区| 内黄县| 麻城市| 延安市| 玉树县| 高尔夫| 介休市| 扶沟县| 郎溪县| 富宁县| 天等县| 屏山县| 阆中市| 九龙城区| 镇沅| 绥滨县| 苍山县| 枣强县| 澄迈县| 宝鸡市| 南宁市| 凤凰县| 长宁县| 宝应县| 噶尔县| 仁化县| 河北省| 彭泽县| 新津县| 葵青区| 颍上县| 房产| 青岛市| 宜昌市| 琼结县| 枣强县| 普定县| 綦江县| 承德市| 通州市|