亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么在構造方法里按照老師的方法進行有參數構造方法賦值,運行結果卻沒有數值出現?

為什么在構造方法里按照老師的方法進行有參數構造方法賦值,運行結果卻沒有數值出現?

惡化石頭 2016-07-02 22:07:55
在代碼的最下面行有我數值的輸入,Telephone phone2 = new Telephone(5.0f,1.4f,4f);就是因為不太懂老師說的那個到底是啥意思,跟System.out.println()里面到底有沒有值到底是啥關系呢?老師也一直強調這個是“有參數的構造方法,可以對變量進行賦值?!彼韵M鹙ava粉們給予解答~//Telephone.javapackage com.project;public class Telephone {? ? float screen;? ? float cpu;? ? float memory; /*? ? public Telephone(){ System.out.println("無參的構造方法!");}*/ public Telephone(float newScreen,float newCpu,float newMemory ){ if(newScreen<3.5f){ System.out.println("您輸入的參數錯誤,自動賦值為3.5f"); newScreen=3.5f; }else{ screen=newScreen; } screen=newScreen; cpu=newCpu; memory=newMemory; System.out.println(); }}//initialTelephone.javapackage com.project;public class initialTelephone { public static void main(String[] args) { // TODO Auto-generated method stub/*//通過無參的構造方法創造對象 Telephone phone = new Telephone(); */ //通過有參的構造方法創造對象,并對對象中的實例變量賦初值Telephone phone2 = new Telephone(5.0f,1.4f,4f); }}
查看完整描述

5 回答

?
米沙之國

TA貢獻30條經驗 獲得超16個贊

  • System.out.println()這樣寫里面沒有任何變量只是起到換行的作用,System.out.println(screen)才會打印出變量screen的值,System.out.print()輸出不換行;


  • Telephone phone2 = new Telephone(5.0f,1.4f,4f);會執行public Telephone(float newScreen,float newCpu,float newMemory )方法;


  • 如需輸出Telephone類的屬性,需將System.out.println()改為System.out.println("screen為"+screen+",cpu為"+cpu+",memory為"+memory);

查看完整回答
2 反對 回復 2016-07-03
?
慕粉3598667

TA貢獻1條經驗 獲得超0個贊

System.out.println();是換行的意思 Java是面向對象的,在平時的練習過程中盡量多寫方法和類,方法不調用是不會執行的 你寫的代碼雖然在測試類里創建了一個對象但沒有用對象調用該方法而且方法沒有返回值也沒有輸出語句使用console會報錯


查看完整回答
反對 回復 2016-07-03
?
晟弡

TA貢獻10條經驗 獲得超3個贊

System.out.println();這里是沒有輸出任何數值的,你可以輸出一下那幾個成員變量。

查看完整回答
反對 回復 2016-07-03
?
yanrun

TA貢獻317條經驗 獲得超240個贊

System.out.println()只是為了輸出是換行使用,和構造方法賦值沒關系。你的類里不是有screen,cpu,memory三個變量嘛,有參的構造方法的作用就是在類初始化的時候給他們3個進行賦值。


查看完整回答
反對 回復 2016-07-03
  • 惡化石頭
    惡化石頭
    類初始化指的是在最開始就對變量進行賦值嘛? 意思是最后面對phone2的賦值無效是嘛?
  • yanrun
    yanrun
    類初始化的時候會調用構造方法,如果調用的是無參的構造方法,則不會對類的成員變量進行初始化。如果調用了帶參的構造方法則根據構造方法的參數以及構造方法的具體實現對變量進行初始化。舉個例子就是Telephone phone = new Telephone();這里的phone對象里的screen,cpu,memory沒有被賦值都是默認值0,而Telephone phone2 = new Telephone(5.0f,1.4f,4f);phone2的screen,cpu,memory被分別賦值為5,1.4,4。
?
曉健

TA貢獻4條經驗 獲得超3個贊

System.out.println();這里沒有進行任何輸出哦

查看完整回答
反對 回復 2016-07-02
  • 惡化石頭
    惡化石頭
    但是在代碼的最下面行有我數值的輸入,Telephone phone2 = new Telephone(5.0f,1.4f,4f); 就是因為不太懂老師說的那個到底是啥意思,跟System.out.println()里面到底有沒有值到底是啥關系呢?老師也一直強調這個是“有參數的構造方法,可以對變量進行賦值。”
  • 晟弡
    晟弡
    你只是輸入進去了,但是你并沒有將數值輸出,其實已經附上值了,輸出出來就可以看出來了。
  • 5 回答
  • 0 關注
  • 2044 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號