New Ribbon
用Canva設計超快超質感(第2版):商業設計、簡報、影片、網頁、電子書與AI應用最速技 AI繪圖工具 × AI視覺設計平台,從圖像生成到專業設計! 最強職場助攻!ChatGPT + AI 高效工作術 短影音制霸:打造TikTok、YT Shorts、IG Reels成功方程式與AI高效創作力 Canva+AI創意設計與品牌應用250招:從商業技巧、社群祕技到AI圖文影音特效 快快樂樂學威力導演2024.影音剪輯與AI精彩創作 Power Automate自動化超效率工作術 Midjourney AI圖像魔導書:搭配ChatGPT魔法加倍 超人氣FB+IG+LINE社群經營與行銷力(第二版) 翻倍效率工作術:不會就太可惜的 Excel × ChatGPT 自動化應用 AppInventor2零基礎入門班中文版(第六版) Python零基礎入門班(第四版) C語言學習聖經 用Canva設計超快超質感:平面、網頁、電子書、簡報、影片製作與AI繪圖最速技 PHP8/MySQL網頁程式設計自學聖經 翻倍效率工作術 - 不會就太可惜的Power BI大數據視覺圖表設計與分析(第三版) 社群經營一定要會的影音剪輯與動畫製作術 Notion高效管理250招:筆記×資料庫×團隊協作,數位生活與工作最佳幫手 Office 2021高效實用範例必修16課(附500分鐘影音教學/範例檔) Excel自學聖經(第二版):從完整入門到職場活用的技巧與實例大全

 

  Android初學特訓班

讀者

讀者
更新時間:2017/8/24 下午 05:00:25

 

1.關於第九章範例ExIntent01裏頭有
"private void requestPermission()","public void onRequestPermissionsResult(int requestCode, String[] permissions,int[] grantResults)","private Button.OnClickListener myListner = new Button.OnClickListener()"
不太確定private跟public的使用時機,以這個範例來說這些宣告是唯一的嗎?

2.書上曾經提到(3-27)全域變數要加private,不知道全域變數是否可加public?因為最近翻到書上10-17提到全域物件是加pubic

3.對於宣告public,private,protected如果想更進一步了解,不知道老師有沒有推薦學習的地方,謝謝老師!

文淵閣工作室

文淵閣工作室
更新時間:2017/8/26 上午 09:35:57

 

感謝您的支持。
在單一 .java 檔中(假設是 MainActivity.java),在 onCreate() 方法外宣告 private 的變數都是全域變數,
若在方法內宣告的 private 變數則為該方法的區域變數。

"private void requestPermission()",
"public void onRequestPermissionsResult(int requestCode, String[] permissions,int[] grantResults)",
"private Button.OnClickListener myListner = new Button.OnClickListener()"

這些訂程序,若以 private 宣告(如 void requestPermission() 和 private Button.OnClickListener myListner)
這些程序就只能在 .java 檔內(MainActivity.java) 呼叫,其它的 .java 檔案,並無法呼叫使用。
如果宣告為 public ,那麼別的 .java 檔就可以呼叫使用了。

您可以在 Google 上搜尋 「java class 教學」,加強 Class 類別的觀念。

讀者

讀者
更新時間:2017/8/28 下午 03:33:58

 

謝謝老師的說明!
想再問一下在onCreate()方法外宣告public的變數和在方法內宣告的public變數都為全域變數嗎?還是在onCreate()方法外若要宣告全域變數只能加private呢?

文淵閣工作室

文淵閣工作室
更新時間:2017/8/30 下午 06:07:04

 

一個 android 的專案不一定只有一個 class,當有多個類別時,就有類別中的成員保護的問題,您可以參考這一篇文章。

http://luckyboy7527.pixnet.net/blog/post/97538839-%5B%E8%BD%89%E8%BC%89%5D-java%E4%BD%9C%E7%94%A8%E5%9F%9Fpublic-%2Cprivate-%2Cprotected-%E5%8F%8A%E4%B8%8D%E5%AF%AB


簡單的說,private 就是給自已使用但別人就不可以使用,而宣告 public 則是自已和別人都可以使用。而 protected 則是自已和自已一繼承者都可以使用,但
其他人不可以使用。

讀者

讀者
更新時間:2017/9/3 下午 07:20:22

 

謝謝老師的說明,建議在下一版可以稍微補充一些這些資訊,因為若對java沒有這麼熟悉的人,若單看書上3-27的說明可能會以為若要建立全域變數,變數前面就得加private,謝謝老師!




 

 

Re:Android初學特訓班

請輸入姓名。

已超出字元數目的最大值。


請輸入電子郵件。

格式無效。


請輸入內容。