הדרכת ג'אווה למתחילים - הנה איך ללמוד ג'אווה

מְחַבֵּר: John Stephens
תאריך הבריאה: 23 יָנוּאָר 2021
תאריך עדכון: 19 מאי 2024
Anonim
הדרכת ג'אווה למתחילים - הנה איך ללמוד ג'אווה - אפליקציות
הדרכת ג'אווה למתחילים - הנה איך ללמוד ג'אווה - אפליקציות

תוֹכֶן


  • הדרכה אנדרואיד SDK למתחילים
  • כיצד ליצור אפליקציות אנדרואיד

מבוא ל- Java למתחילים

לא רק שג'אווה היא שפת התכנות הרשמית לפיתוח אפליקציות אנדרואיד (יחד עם קוטלין), ג'אווה עצמה משמשת על ידי גוגל עבור חלקים גדולים מהאינטרנט של אנדרואיד. ישנם שני חלקים ברורים ללמוד Java לכתיבת אפליקציית אנדרואיד. האחת היא שפת התכנות של ג'אווה עצמה, השנייה היא הבנה כיצד ליצור אפליקציה מבחינת ממשק המשתמש שלה, מערכת ההפעלה אנדרואיד, וערכת פיתוח תוכנה לאנדרואיד (SDK). במדריך זה נעסוק בראשון מבין אלה, שפת התכנות Java.

ג'אווה שוחררה לראשונה באמצע שנות התשעים על ידי סאן מיקרוסיסטמס. זה תוכנן כך שיהיה קל ללמוד ג'אווה על ידי מתכנתים שכבר הכירו את C ו- C ++. במהלך 2006 ו -2007 שיחררה סאן את ג'אווה כתוכנה חופשית וקוד פתוח, בתנאי הרישיון הציבורי הכללי של GNU (GPL). סאן נקנתה על ידי אורקל בשנת 2009/2010, ואורקל נותרה מחויבת לג'אווה.

כדי להתחיל ללמוד Java ולכתוב תוכניות Java אתה זקוק לדרך להרכיב קוד מקור ולהפוך אותו להפעלה למשך זמן ההפעלה של Java. הדרך הרגילה לעשות זאת היא להתקין את ערכת פיתוח Java. בזמן כתיבת הגרסה הנוכחית של Java היא Java 8, אולם היא חדשה יחסית, ולכן אנדרואיד משתמשת ב- Java 7. אם אינכם בטוחים בהתקנת JDK אז קראו כיצד להתקין את מערך ההדרכה של Java Software Kit Kit. אורקל מספקת גם מדריך להתקנה של JDK 7.


קוטלין לעומת ג'אווה - מה עדיף עבורך?

עם זאת, אם אינך מוכן להתקין את ה- JDK, ואתה רוצה מסלול מהיר לנסות את תוכנית ה- Java הראשונה שלך, אני ממליץ compilejava.net. זוהי סביבת תכנות מקוונת פשוטה המאפשרת לך לכתוב תוכנות Java פשוטות ולהפעיל אותן מבלי שתצטרך לעבור את הטרחה של הגדרת ה- JDK. יש גם את היתרון הנוסף שמאחר שה- OpenJDK האחרונה מגיעה עם Android Studio אז באמת אינך צריך להתקין את JDK, אפילו לא לכתיבת אפליקציות אנדרואיד!

דף האינטרנט compilejava.net מחולק לשלושה חלקים. בחלקו העליון נמצא המרחב לכתיבת קוד הג'אווה שלך ובתחתיתו הפלט מהלחינה (משמאל) והפעלת (ישר) של הקוד הזה. מכאן ואילך אני מניח שאתה משתמש ב- compilejava.net. עם זאת, למי שהתקין את JDK התהליך כמעט זהה פרט לכך שתצטרך להשתמש בעורך טקסט במחשב האישי שלך ולא בעורך בתוך ה- IDE המקוון.

חתוך והדבק את הקוד הבא בעורך:

מעמד ציבורי HelloWorld {public static void main (מחרוזת args) {System.out.println ("שלום, עולם"); }}

אם אתה משתמש ב- JDK, עליך לשמור את הקובץ בשם HelloWorld.java. ב- Java שם הקובץ של קוד המקור ושם הכיתה חייב להיות זהה. השורה הראשונה בקוד מצהירה על מחלקה בשם HelloWorld, ולכן יש לשמור את קוד המקור הזה ב- HelloWorld.java. עם זאת compilejava.net הוא מספיק חכם כדי להבין את זה, כך שהוא שומר את הקובץ כ- HelloWorld.java באופן אוטומטי!


לחץ על הלחצן "COMPILE & EXECUTE" לכיוון החלק התחתון של המסך.התגמול שלך הוא הטקסט "שלום, עולם" שמוצג בחלונות הימניים התחתונים. מזל טוב!

מה בדיוק עשיתי?

אז בואו ניקח רגע להסתכל על מה שקרה בדיוק. ראשית קוד המקור. הקובץ עושה שלושה דברים. 1) זה מכריז על כיתה בשם HelloWorld. 2) זה מגדיר שיטה (פונקציה) בכיתת HelloWorld הנקראת עיקרי. 3) ה עיקרי () שיטת שיחות System.out.println כדי להפיק טקסט.

ב- Java ובכל שפות התכנות המכוונות לאובייקט מחלקה מגדירה אובייקט. אובייקט הוא פריט שמכיל עצמו אינטראקציה עם אובייקטים אחרים. באנדרואיד אובייקט כזה יכלול אלמנטים בממשק המשתמש, חיבור רשת, נתוני מיקום וכדומה.

על כל תוכנית Java להגדיר שיטה שנקראת main לפחות בכיתה אחת. זוהי נקודת הכניסה, בה התוכנית מתחילה לבצע. בדוגמה הפשוטה שלמעלה עיקרי () בשיטה יש רק שורת קוד אחת, קריאה System.out.println לפלט "שלום, עולם". println () היא שיטה ששייכת למחלקת PrintStream ונכללת כחלק משיעור המערכת. ל- Oracle מידע רב על מחלקת המערכת ומחלקת PrintStream.

Java אינה תלויה בארכיטקטורה מה שאומר שקובץ .java אינו מורכב עבור מעבד ספציפי במערכת הפעלה ספציפית, כמו Windows בשבב x86 של אינטל, או אנדרואיד במעבד ARM Cortex-A, אלא הוא הופך ל- Java צופן קוד. התפקיד של המכונה הווירטואלית Java הוא להריץ את קוד התיק הזה בפלטפורמה הספציפית.

מונחי Java חשובים מוסברים

משתנים

בעת כתיבת תוכנות מחשב תצטרך לאחסן נתונים מסוימים לשימוש זמני. לדוגמא במשחק אנדרואיד תרצו לאחסן את הציון של הנגן הנוכחי. פיסות נתונים אלה מאוחסנות במשתנים - תיבה בה ניתן להכניס נתונים ואז לחזור אחר כך לאחזר אותם. מכיוון שהנתונים מגיעים בצורות שונות, יש להגדיר משתנה עם סוג, המספר ל- Java מה מאוחסן. חלק מסוגי הנתונים הפרימיטיביים של Java כוללים int (למספר שלם), כפול (למספר נקודה צפה של דיוק כפול), ו- בוליאני (לערך נכון / שקר).

להלן תוכנית פשוטה שקובעת את ערכו של משתנה, מדפיסה את הערך לקונסולה, משנה את המשתנה ואז מדפיסה אותו שוב:

משתנה בכיתה ציבורית VariableTest {public static void main (מחרוזת args) {int i = 1; System.out.println ("הערך של i הוא:" + i); i = i + 24; System.out.println ("הערך של i הוא עכשיו:" + i); }}

לחץ על "COMPILE & EXECUTE". פלט התוכנית יהיה:

הערך של i הוא: 1 הערך של i הוא עכשיו: 25

כפי שאתה יכול לראות התוכנית מגדירה משתנה בשם "i" ונותנת לו ערך התחלתי של 1. הערך של "i" מודפס למסוף. ואז אני מוגדר לערך החדש של i + 24, או 1 + 24, שהוא 25. הערך החדש מודפס אז.

נסה לשנות את התוכנית כך שתשתמש ב"כפול "ולא ב"אינט". הגדר את "i" למשהו כמו 1.3 והגדיל את ערכו במספר עשרוני אחר כמו 24.9.

אם אתה מסתכל על println () בשיטה תראה מספר שלם שמתווסף למחרוזת: "הערך של i הוא:" + i. מה שקורה כאן למעשה הוא שג'אווה יודעת שהחלק הראשון של הביטוי הוא מחרוזת, ולכן הוא מייצר את ערך המחרוזת עבור אני, במקרה זה "1" ואז שרשור אותו למחרוזת שנותנת: "הערך של i הוא: 1".

מיתרים

מיתרים הם חלק חשוב בכל שפת תכנות כולל ג'אווה. בניגוד int או בוליאני, מחרוזת אינה סוג פרימיטיבי, היא כיתה. כשאתה יוצר משתנה מחרוזת אתה באמת יוצר אובייקט מחרוזת (שימו לב לאות ההון S). כאובייקט יש לו תכונות מסוימות כמו הערך שלו (המחרוזת עצמה) ואורכו. ניתן לתמרן מיתרים בהרבה דרכים שונות, כולל ניתוח, שרשור, השוואה וחיפוש.

להלן דוגמה לתוכנית שמבצעת כמה פעולות פשוטות במיתר:

בכיתה ציבורית PlayingWithStrings {public static void main (מחרוזת args) {String hello = "שלום, עולם"; System.out.println (שלום); // הוסף an! עד הסוף שלום = שלום + "!"; System.out.println (שלום); // חלץ את המילה "שלום" מהמחרוזת // כלומר החל מההתחלה (0) במשך 5 תווים מחרוזת justHello = hello.substring (0,5); System.out.println (justHello); // הוסף כמה רווחים נגררים ואז הסר אותם בעזרת trim () hello = hello + ""; hello = hello.trim (); // פלט כעת את המחרוזת הכל ב- UPPERCASE ובמילים קטנות System.out.println (hello.toUpperCase ()); System.out.println (hello.toLowerCase ()); }}

ערוך והפעל אותו כמוצג קודם.

זוהי שיטה מיוחדת הנקראת קונסטרוקטור. הקבלן נקרא רק פעם אחת, ברגע בו נוצר האובייקט.

החלק הראשון של התוכנית יוצר אובייקט מחרוזת בשם "שלום" ונותן לו ערך של "שלום, עולם". למרות שזה נראה דומה לאיך שאתה מצהיר ומקצה מספר שלם או סוג פרימיטיבי אחר, למעשה יש הרבה יותר קורה כאן. Java מאפשרת למפעילים פשוטים כמו = ו- + להקצות משימות פשוטות. אז באמת מחרוזת שלום = "שלום, עולם"; זה בעצם כמה מחרוזת שלום = מחרוזת חדשה ("שלום, עולם");במילים אחרות, צור אובייקט חדש מסוג מחרוזת והעביר את הערך "שלום, עולם" לבנאי. אך על כך נדבר יותר בסעיף האובייקטים למטה.

החלק הבא מראה כיצד ניתן לשלב מחרוזות, במקרה זה מתווספת נקודת קריאה לסוף המחרוזת. מכיוון שמחרוזת היא אובייקט, יכולות להיות לה שיטות. String.substring () היא שיטה שמחזירה חלק מהמחרוזת. במקרה זה חמשת התווים הראשונים. String.trim () היא שיטה נוספת המסלקת חללים מובילים ונגררים. החלק האחרון של התוכנית מדגים את String.toUpperCase () ו String.toLowerCase () שיטות.

הפלט מהתוכנית יהיה:

שלום, עולם שלום, עולם! שלום הלו, העולם! שלום עולם!

תוכל ללמוד עוד על אובייקט המחרוזת במדריך המיתרים של אורקל ומתיעוד ה- Java String.

לולאות

אם יש דבר אחד בו מחשב טוב, הוא מבצע משימות חוזרות. כדי לבצע משימה שחוזרת על עצמה בשפת תכנות אתה משתמש במבנה שנקרא לולאה - משהו שמתעגל שוב ושוב.

לג'אווה יש שלושה סוגים של לולאה פשוטה: ה- ל לולאה, בזמן לולאה, וה עושה תוך כדי לולאה. כל סוג לולאה עוקב אחר אותו רעיון בסיסי, אתה צריך לחזור על משהו שוב ושוב עד להתקיים תנאי מסוים.

להלן דוגמה שמראה כיצד להדפיס את המספרים 1 עד 10, 11 עד 20 ו 21 עד 30, באמצעות שלושת הסוגים השונים של הלולאה:

לולאות בכיתה ציבורית {public static void main (מחרוזת args) {// עבור לולאה עבור (int i = 1; i <= 10; i ++) {System.out.println ("i הוא:" + i); } // בזמן Loop int j = 11; while (j <= 20) {System.out.println ("j הוא:" + j); j ++; } // Do While Loop int x = 21; do {System.out.println ("x הוא:" + x); x ++; } while (x <= 30); }}

צור קובץ בשם Loops.java עם הקוד מלמעלה, ואז ערוך אותו והפעל כפי שמוצג קודם.

ה ל לולאה כשלושה חלקים. ראשית אתחול (int i = 1), שמבוצעת פעם אחת בלבד. בדוגמה לעיל האתחול משמש להצהרת מספר שלם אני ולהגדיר את ערכו ל- 1. ואז מגיע הביטוי לבדיקה (i <= 10). ביטוי זה ייבחן בכל פעם שהלולאה מבצעת. אם תוצאת הבדיקה נכונה, הלולאה תסתובב שוב. בדוגמא זו הבדיקה היא לבדוק כי i עדיין פחות או שווה ל 10. לאחר כל איטרציה יבוצע החלק השלישי, האיטרטור. בדוגמה זו זה מגדיל את הערך של אני על ידי אחד. שים לב ש i = i + 1 זהה ל i ++.

ה בזמן לולאה דומה ל- ל לולאה, למעט שהיא לא מכילה את שלב האתחול ואת שלב האיטרטור. פירוש הדבר כי האתחול צריך להיעשות בנפרד, ומכאן ההצהרה int j = 11;. יש לאתחל את קידוד הנפרד. בדוגמא שלנו זה הקו j ++ שנמצא בתוך הלולאה אחרי println ().

א עושה תוך כדי לולאה דומה מאוד ל בזמן לולאה בהבדל אחד גדול, הבדיקה לבדוק אם הלולאה צריכה להמשיך היא בסוף הלולאה ולא בתחילת הדרך. משמעות הדבר היא כי א עושה תוך כדי מובטח לבצע לפחות פעם אחת, אך א בזמן לולאה אפילו לא צריכה לבצע בכלל, אם התנאים לא מתקיימים בכניסה לולאה.

כמו בזמן לולאה, האתחול צריך להתרחש מחוץ ללולאה, במקרה זה: int x = 21; והאיטרטור מתרחש בתוך הלולאה: x ++. מתי איקס עובר מעל 30 הלולאה תיפסק.

חפצים

כפי שציינתי קודם במדריך Java זה למתחילים, ג'אווה היא מה שמכונה שפת תכנות מונחה-עצמים (OO) וכדי ללמוד באמת תכנות ג'אווה ותכנות אנדרואיד, חשוב להבין מושגי OO.

ברמה הפשוטה ביותר אובייקט הוא מערך של שיטות (פונקציות) העובדות על מערך נתונים. הנתונים והשיטות שייכים לאובייקט, ועובדים עבור האובייקט.

להלן קוד המקור של תוכנית פשוטה מאוד היוצרתמונה חפץ:

מונה בכיתה ציבורית {ספירת int; דלפק ציבורי () {count = 0; } תוספת בטל ציבורי () {count ++; } getCount לציבור () {ספירת החזרות; } main static void main (מחרוזת args) {Counter myCounter = Counter חדש (); System.out.println ("mycounter הוא" + myCounter.GetCount ()); myCounter.crement (); System.out.println ("mycounter הוא" + myCounter.GetCount ()); }}

לאובייקט הדלפק יש פיסת נתונים אחת, משתנה מספר שלם לספור ושלוש שיטות (מלבד עיקריות): מונה (), עלייה () ו- GetCount (). השארת השיטה הראשונה כרגע, אתה יכול לראות את זה תוספת () ו GetCount () הם פשוטים מאוד. הראשון מוסיף אחד למשתנה הפנימי לספור והשני מחזיר את הערך של לספור.

עד עכשיו כל השיטות שהצהרנו התחילו איתןחלל ציבורי אבל אם אתה מבחין בGetCount() השיטה מתחילה עםאינטל ציבורי. נדבר יותר עלציבורי ברגע, אבל ההבדל ביןבטל וint האם זה:בטל מצהיר שהשיטה לא מחזירה כלום, לא תהיה שום תוצאה שתחזור מהשיטה. אבלint אומר לנו שהשיטה תחזיר מספר, ספציפית מספר שלם. אתה יכול למעשה ליצור שיטות שיחזירו כל מיני נתונים, כולל אובייקטים.

שימו לב שלשיטה הראשונה יש שם זהה למעמד עצמו, כלומר מונה (), ואין לו סוג חזרה (אפילו לא בטל). זוהי שיטה מיוחדת הנקראת קונסטרוקטור. הקבלן נקרא רק פעם אחת, ברגע בו נוצר האובייקט. הוא משמש לאתחול האובייקט בערכי ברירת מחדל ולביצוע כל משימות האתחול הדרושות אחרות. בדוגמה זו זה פשוט קובע לספור לאפס.

ירושה

הדבר הגדול בשיעורים הוא שתוכלו ליצור שיעור כללי לרעיון מופשט ואז ליצור שיעורים ספציפיים הנגזרים מהכיתה המקורית. לדוגמה, אתה יכול ליצור כיתה בשם בעלי חיים ואז לגזור ממנה כיתה חדשה עבור חיה ספציפית, נניח אלק.

הנה דוגמה, ארחיב על מה שקורה כאן ברגע ... תצטרך ליצור שני קבצים לדוגמה זו, Animal.java ו Elk.java. הנה Animal.java:

חיה בכיתה ציבורית {int NumberOfLegs; בעלי חיים ציבוריים (int n) {NumberOfLegs = n; } ציבור int GetNumLegs () {להחזיר NumberOfLegs; }}

בדרך כלל היית שם את מחלקת בעלי החיים בקובץ שנקרא Animal.java ושיעור Elk למטה בקובץ שנקרא Elk.java. עם זאת אם אתה משתמש ב- compilejava.net, אתה יכול להכניס את כל הקוד לחלון העורך והוא יישמר אוטומטית בקבצים הנכונים כשאתה אוסף ומבצע.

אלק בכיתה ציבורית מרחיב בעלי חיים {int lengthOfAntlers; Elk ציבורי (int l) {סופר (4); lengthOfAntlers = l; } ציבור int GetAntlerLength () {return lengthOfAntlers; } main static void main (מחרוזת args) {Elk myElk = Elk new (30); System.out.println ("Antler:" + myElk.GetAntlerLength ()); System.out.println ("רגליים:" + myElk.GetNumLegs ()); }}

כיתת בעלי החיים היא מה שמכונה ככיתה סופר, ואילו הכיתה הנגזרת אלק ידועה ככיתה תת, מכיוון שהיררכית היא מתחת לשיעור בעלי החיים. כאשר מחלקים מחלקה (כלומר, אתה יוצר תת-מחלקה) המחלקה החדשה מקבלת את הנתונים והשיטות של מחלקת העל. זו הסיבה שהתוכנית מסוגלת להתקשר myElk.GetNumLegs () למרות שזה חלק משיעור בעלי החיים. לשיעור Elk החדש יש שני משתנים:NumberOfLegs וlengthOfAntlers. יש לו גם שתי שיטות:אורך GetAntler וGetNumLegs. אם יצרנו תת-מחלקה אחרת, נגיד כבשים, זה יירש אתNumberOfLegs משתנה וה -שיטת GetNumLegs.

כשאתם מעצבים חפצים תגלו שאתם רוצים שחלק מהשיטות ייחשפו לשאר התוכנית, כך שניתן יהיה לקרוא להם. אבל שיטות אחרות מומלץ לשמור על פרטיות, כך שרק לאובייקט עצמו יש גישה אליו. כאן המקום הזהציבורי נכנס למשחק. הכרזנו על הכל כציבורי כלומר ניתן לקרוא לשיטה מכל מקום אחר בקוד. עם זאת אתה יכול להכריז על שיטות כ פרטי או מוגן, אשר יגביל את הגישה לשיטות אלה. ניתן להחיל את אותם כללי גישה גם על משתני האובייקט. דיון מעמיק יותר הוא מעבר לתחום של הדרכה זו, אך אם תרצה לקבל מידע נוסף, עליך לקרוא בקרת גישה לחברי כיתה ולהצהיר על משתני חברים מתיעוד ה- Java של אורקל.

דבר נוסף שכדאי להזכיר הוא כיצד הבנאים עובדים. קונסטרוקטור Elk () מאתחל אתlengthOfAntlers משתנה, במקרה זה ל -30, המספר שהועבר כשנוצר האובייקט. אך לפני כן הוא מכנה את הקבלן של מעמד העל (כלומר בעל חיים() ) באמצעות סימון ה- Java המיוחדסופר.

יש עוד הרבה דברים שאפשר לומר על תכנות מונחה עצמים (OOP), אבל הדרכה זו לג'אווה למתחילים צריכה להספיק בכדי לתת לכם טעימה ולהתחיל.

הדרכת ג'אווה למתחילים - הוספה

תודה שבדקת את הדרכת Java זו למתחילים. אם אתה רוצה מידע נוסף על לימוד Java, אנו שמחים מאוד להציע את הקורס המקיף שלנו ב- DigitAcademy.com. סדרה מקיפה זו תעביר אותך ממתחילים מוחלטים למקצוענים בטוחים, ותקבל גם את המבוא המלא שלנו לקורס פיתוח אפליקציות אנדרואיד.

אתה יכול גם לבדוק את חלק 2 של סדרה זו: מדריך Java למתחילים, חלק 2. יש גם הרבה הדרכות מקוונות ללמוד Java. להלן כמה מאורקל:

הדרכות אורקל

  • תחילת העבודה - מבוא לטכנולוגיית Java ושיעורים על התקנת תוכנת פיתוח Java ושימוש בה ליצירת תוכנית פשוטה.
  • לימוד שפת Java - שיעורים המתארים את המושגים והתכונות החיוניות של שפת תכנות ה- Java.
  • שיעורי Java חיוניים - שיעורים על חריגים, קלט / פלט בסיסיים, במקביל, ביטויים רגילים וסביבת הפלטפורמה.

הדרכות צד ג '

אולי תרצה גם לעיין בהדרכות הבאות:

  • Point Tutorials - מדריך Java
  • מבוא לתכנות באמצעות Java

(ה) ספרים

לאלו מכם שרוצים ספר אלקטרוני או ספר מודפס כיצד ללמוד תכנות ג'אווה, אולי כדאי לכם לקחת בחשבון את הדברים הבאים:

  • Java: מדריך למתחילים
  • ראש ג'אווה ראשונה

כמו כן, ספרים טובים על תכנות אנדרואיד כוללים:

  • תכנות אנדרואיד: המדריך הגדול של החווה Nerd
  • מדריך למתחילים לפיתוח משחקי אנדרואיד
  • לימוד Java על ידי בניית משחקי אנדרואיד

משאבי Java:

  • כיצד לכתוב את משחק האנדרואיד הראשון שלכם ב- Java
  • הדרכת סטודיו אנדרואיד למתחילים
    • כיצד להתקין את Android Studio ולהתחיל את הפרויקט הראשון שלך
    • כיצד להתקין את SDK אנדרואיד
  • היכרות עם סטודיו אנדרואיד ואת הקבצים המרכיבים את האפליקציות שלכם
  • עבור מביצוע קידוד למתחיל גאונות ג'אווה

למידה יכולה להיות תהליך ארוך ומפרך. יחד עם הסחות דעת ואחריות יומיומית, זה קל מדי לאבד את המוטיבציה.מה אם היינו אומרים לכם שיש דרכים לעשות זאת שפר את המיקוד שלך והגביר את מהירות הלמידה שלך - נשמע טוב מ...

ענף אבטחת הרשת הוא בשווי של כ -150 מיליארד דולר כרגע וזה גדל בקצב פנומנלי.כמעט כל אחד יכול למד כיצד אבטחת סייבר עובדת, אבל זה חלק מהבעיה. הרעים לומדים טכניקות פריצה והשתמש בהם כדי להחזיק את העולם כופר...

הקפד לקרוא