בעזרת תיבת הדו-שיח Create New Class ותבניות קבצים, Android Studio עוזר לכם ליצור במהירות את המחלקות והסוגים החדשים הבאים:
- מחלקות Java
- ספירה ומחלקות סינגלטון
- סוגי ממשקים והערות
אחרי שממלאים את השדות בתיבת הדו-שיח יצירת כיתה חדשה ולוחצים על אישור, Android Studio יוצר קובץ .java
שמכיל קוד שלד, כולל הצהרת חבילה, כל הייבוא הנדרש, כותרת והצהרה על כיתה או סוג. אחר כך אפשר להוסיף את הקוד לקובץ הזה.
תבניות קבצים מציינות איך Android Studio יוצר את קוד השלד. אפשר להשתמש בתבניות הקבצים שמסופקות עם Android Studio כמו שהן, או להתאים אותן אישית לתהליך הפיתוח.
צפייה בתבניות קבצים והתאמה אישית שלהן
ב-Android Studio יש תבניות קבצים שקובעות איך נוצרים סוגים ומחלקות Java חדשים באמצעות תיבת הדו-שיח Create New Class (יצירת מחלקה חדשה). אפשר להתאים אישית את התבניות האלה.
איור 1. תיבת הדו-שיח יצירת כיתה חדשה.
תבניות הקבצים ב-Android Studio כוללות קוד של Velocity Template Language (VTL) ומשתנים שמטפלים באפשרויות הנוספות האלה. תיבת הדו-שיח יצירת כיתה חדשה משתמשת בתבניות של הקבצים AnnotationType, Class, Enum, Interface ו-Singleton.
כדי לראות את התבניות, למצוא התאמות אישיות ולשנות את התבניות, פועלים לפי השלבים הבאים:
מבצעים אחת מהפעולות הבאות:
- ב-Windows או ב-Linux, בוחרים באפשרות File (קובץ) > Settings (הגדרות) > Editor (עורך) > File and Code Templates (תבניות של קבצים וקוד) > Files (קבצים).
- ב-macOS, בוחרים באפשרות Android Studio > Preferences > Editor > File and Code Templates > Files.
ברשימת התבניות, השמות הפנימיים של התבניות מודגשים. שמות של תבניות מותאמות אישית מוצגים בצבע מודגש, כמו כחול.
מתאימים אישית את תבניות הקבצים לפי הצורך.
אם רוצים להשתמש בשדות של תיבת הדו-שיח Create New Class, צריך לוודא שהשינויים תואמים לקוד תבנית הקובץ של Android Studio.
מידע נוסף על תבניות קבצים, כולל VTL, זמין במאמרים File and Code Templates ו-File and Code Templates Dialog.
יצירת מחלקה או סוג ב-Java
Android Studio עוזר לכם ליצור מחלקות Java חדשות, מחלקות enumeration ומחלקות singleton, וסוגי ממשקים והערות שמבוססים על תבניות קבצים.
כדי ליצור מחלקה או סוג חדשים של Java, פועלים לפי השלבים הבאים:
- בחלון Project (פרויקט), לוחצים לחיצה ימנית על קובץ או תיקייה של Java ובוחרים באפשרות New (חדש) > Java Class (מחלקת Java).
- בתיבת הדו-שיח יצירת כיתה חדשה, ממלאים את השדות:
- שם – השם של הכיתה או הסוג החדשים. הוא צריך לעמוד בדרישות בנוגע לשמות ב-Java. לא מקלידים סיומת של שם קובץ.
- סוג – בוחרים את הקטגוריה או הסוג של הכיתה.
- מחלקת אב – המחלקה שממנה הכיתה החדשה יורשת. אפשר להקליד את שם החבילה ושם המחלקה, או רק את שם המחלקה, ואז ללחוץ לחיצה כפולה על פריט ברשימה הנפתחת כדי להשלים אותו אוטומטית.
- ממשקים – ממשק אחד או יותר שהמחלקה או הסוג החדשים מטמיעים. אם יש כמה ממשקים, צריך להפריד ביניהם באמצעות פסיק ואחריו רווח (לא חובה). אפשר להקליד את שם החבילה ושם הממשק, או רק את שם הממשק, ואז ללחוץ לחיצה כפולה על פריט ברשימה הנפתחת כדי להשלים אותו אוטומטית.
- Package – החבילה שבה ימוקמו המחלקה או הסוג. ברירת המחדל מופיעה אוטומטית בשדה. אם מקלידים שם חבילה בשדה, כל החלקים במזהה החבילה שלא קיימים מסומנים באדום. במקרה כזה, Android Studio יוצר את החבילה אחרי שלוחצים על OK. השדה הזה חייב להכיל ערך. אחרת, קובץ ה-Java לא יכיל הצהרת
package
, והסיווג או הסוג לא ימוקמו בחבילה בפרויקט. - חשיפה – בוחרים אם הכיתה או הסוג גלויים לכל הכיתות, או רק לאלה שנכללות בחבילה שלה.
- משנים – בוחרים את המשנה Abstract או Final עבור Class, או לא בוחרים אף אחד מהם.
- הצגת תיבת הדו-שיח לבחירת שיטות לביטול או להטמעה – אם בוחרים באפשרות סוג של Class, מסמנים את התיבה הזו כדי לפתוח את תיבת הדו-שיח לבחירת שיטות לביטול או להטמעה אחרי שלוחצים על אישור. בתיבת הדו-שיח הזו, אפשר לבחור שיטות שרוצים להחליף או להטמיע, ו-Android Studio ייצור קוד שלד לשיטות האלה.
- לוחצים על אישור.
לחלופין, בוחרים קובץ או תיקייה של Java בחלון Project או לוחצים על קובץ Java בכלי לעריכת קוד. לאחר מכן בוחרים באפשרות קובץ > חדש > Java Class (מחלקת Java).
הפריט שתבחרו יקבע את חבילת ברירת המחדל לכיתה או לסוג החדשים.
ההשלמה האוטומטית פועלת רק בשם הממשק הראשון. שימו לב: הפסיק ושם הממשק שאחריו יכולים להציג שגיאת תיאור, אבל אפשר להתעלם מהשגיאה כי היא לא משפיעה על הקוד שנוצר.
שיטת ברירת המחדל תלויה באופן שבו פתחתם את תיבת הדו-שיח יצירת כיתה חדשה. אם בחרתם קודם קובץ או תיקייה של Java בחלון Project, ברירת המחדל היא החבילה של הפריט שבחרתם. אם קודם לחצתם על קובץ Java בכלי לעריכת קוד, ברירת המחדל היא החבילה שמכילה את הקובץ הזה.
כל השדות שלא רלוונטיים לסוג מוסתרים.
Android Studio יוצר קובץ Java עם קוד שלד שאפשר לשנות. הקובץ ייפתח בעורך הקוד.
הערה: אפשר ליצור מחלקת סינגלטון על ידי בחירה באפשרות קובץ > חדש > סינגלטון או באפשרות קובץ > חדש > מחלקת Java. האפשרות השנייה מציעה יותר אפשרויות.
תבניות קבצים של Android Studio
בקטע הזה מופיע קוד תבנית הקובץ של Android Studio שנכתב בשפת הסקריפטים VTL, ואחריו הגדרות של המשתנים. הערכים שאתם מספקים בתיבת הדו-שיח יצירת כיתה חדשה הופכים לערכי המשתנים בתבנית.
שימו לב: השורות שמתחילות ב-#if (${VISIBILITY}
נמשכות עד לסוגר המסולסל הפותח (#if (${VISIBILITY}
).{
תבנית קובץ AnnotationType
#if (${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end #if (${IMPORT_BLOCK} != "")${IMPORT_BLOCK} #end #parse("File Header.java") #if (${VISIBILITY} == "PUBLIC")public #end @interface ${NAME} #if (${INTERFACES} != "")extends ${INTERFACES} #end { }
תבנית של קובץ כיתה
#if (${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end #if (${IMPORT_BLOCK} != "")${IMPORT_BLOCK} #end #parse("File Header.java") #if (${VISIBILITY} == "PUBLIC")public #end #if (${ABSTRACT} == "TRUE")abstract #end #if (${FINAL} == "TRUE")final #end class ${NAME} #if (${SUPERCLASS} != "")extends ${SUPERCLASS} #end #if (${INTERFACES} != "")implements ${INTERFACES} #end { }
תבנית קובץ של טיפוסים בני מנייה (enum)
#if (${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end #if (${IMPORT_BLOCK} != "")${IMPORT_BLOCK} #end #parse("File Header.java") #if (${VISIBILITY} == "PUBLIC")public #end enum ${NAME} #if (${INTERFACES} != "")implements ${INTERFACES} #end { }
תבנית של קובץ ממשק
#if (${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end #if (${IMPORT_BLOCK} != "")${IMPORT_BLOCK} #end #parse("File Header.java") #if (${VISIBILITY} == "PUBLIC")public #end enum ${NAME} #if (${INTERFACES} != "")implements ${INTERFACES} #end { #end { }
תבנית של קובץ Singleton
#if (${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end #if (${IMPORT_BLOCK} != "")${IMPORT_BLOCK} #end #parse("File Header.java") #if (${VISIBILITY} == "PUBLIC")public #end class ${NAME} #if (${SUPERCLASS} != "")extends ${SUPERCLASS} #end #if (${INTERFACES} != "")implements ${INTERFACES} #end { private static final ${NAME} ourInstance = new ${NAME}(); #if (${VISIBILITY} == "PUBLIC")public #end static ${NAME} getInstance() { return ourInstance; } private ${NAME}() { } }
משתנים בתבנית קובץ
Android Studio מחליף את משתני תבנית הקובץ בערכים בקובץ ה-Java שנוצר. מזינים את הערכים בתיבת הדו-שיח יצירת כיתה חדשה. בתבנית יש את המשתנים הבאים שבהם אפשר להשתמש:
-
IMPORT_BLOCK
– רשימה של הצהרות Java שמופרדות בשורה חדשה, שנדרשות לתמיכה במחלקת-על או בממשקים, או מחרוזת ריקה (""
). לדוגמה, אם מטמיעים רק את הממשקRunnable
ולא מרחיבים שום דבר, המשתנה הזה יהיה"import java.lang.Runnable;\n"
.import
אם מטמיעים את הממשקRunnable
ומרחיבים את המחלקהActivity
, התוצאה תהיה"import android.app.Activity;\nimportjava.lang.Runnable;\n"
. VISIBILITY
– האם תהיה לכיתה גישה ציבורית או לא. הערך יכול להיותPUBLIC
אוPACKAGE_PRIVATE
.-
SUPERCLASS
– שם כיתה יחיד או ריק. אם יש כזה, יופיע סעיףextends ${SUPERCLASS}
אחרי שם המחלקה החדש. -
INTERFACES
- רשימה של ממשקים שמופרדים בפסיקים, או ריקה. אם יש כיתת-על, יופיע סעיףimplements ${INTERFACES}
אחרי כיתת-העל, או אחרי שם הכיתה אם אין כיתת-על. בממשקים ובסוגי ההערות, הממשקים כוללים את מילת המפתחextends
. -
ABSTRACT
– האם הכיתה צריכה להיות מופשטת או לא. הערך יכול להיותTRUE
אוFALSE
. -
FINAL
– האם המחלקה צריכה להיות סופית או לא. הערך יכול להיותTRUE
אוFALSE
.