Java syntax (original) (raw)
Die Syntax der Programmiersprache Java ist in der Java Language Specification definiert, ebenso wie die Semantik von Java. Dieser Artikel gibt einen Überblick über die Java-Syntax und stellt einige ihrer Besonderheiten heraus. Details sind in den Java-Sprachspezifikation von Sun Microsystems aufgeführt.
Property | Value |
---|---|
dbo:abstract | المدخلات والمخرجات: لنجعل برامجنا أكثر إثارة للاهتمام، ونحن نريد قبول المدخلات و تنسيق مخرجات البرنامج بشكل صحيح. وبطبيعة الحال فإن استخدام البرامج الحديثة كواجهة المستخدم الرسومية(GUI) لجمع مدخلات المستخدم. ومع ذلك فإن برمجة مثل تلك المدخلات تتطلب المزيد من الأدوات والتقنياتأكثر مما لدينا في الوقت الحالي. لأن المطلوب الأول من العمل هوأن يصبح المبرمج أكثر دراية واعتيادية مع لغة البرمجة جافا، ونحن سنبدأ بتغطية المدخلات والمخرجات في الوقت الراهن. قراءة الإدخال: أنه من السهل طباعة المخرجات إلى نافذة وحدة التحكم فقط عن طريق استخدام System.out.println ولكن القراءة المدخلات ليست بهذه البساطة. ولقراءة مدخلات وحدة التحكم، عليك أولا بناء Scanner الذي هومرتبط بالنظام الداخلي. ونستطيع استخدام الكثير من الدوال الموجودة في فئه rScanne لقراءة المدخلات ومثال على ذلك متغير nextLine لقراءة سطر من المدخلات;("?System.out.print ("What is your name;String name = in.nextLine لان المدخل قد يحتوي على بعض المسافات ولقراءته كسطر نستخدم متغير nextLine ولقراءة المدخل ككلمه واحده نستخدم داله in.next; مثال على ذلك ;String firstName = in.next استخدم داله nextInt لإدخال عدد صحيح مثال على ذلك ;("?System.out.print("How old are you;int age = in.nextInt استخدم داله nextDouble لإدخال عدد عشري و لابد من ايرادimport java.util.Scanner; في بدايه البرنامج فئه Scanner معرفه في حزمهjava. util ، وفي حال استخدام هذا الصنف لابد من استخدام import ملاحظه:فئه Scanner ليست مناسبة لقراءة كلمة السر من وحدة التحكم حيث إن المدخلات تكون ظاهره للجميع، لغة الجافا SE 6 قدمت فئه console خصيصاً لهذا الغرض، لقراءة كلمه السر استخدم التعليمات البرمجية التاليه: ;Console cons = System.console;("String username = cons.readLine("User name;("char[] passwd = cons.readPassword("Password ولأسباب أمنية، يتم إرجاع كلمة المرور في المصفوفه المكونه من مجموعة من الأحرف بدلا من السلسلة من الاحرف (String)، بعد الانتهاء من تجهيز كلمة السر، يجب عليك استبدال المصفوفه على الفور بأي رقم تريده. ولعل معالجة المدخلات مع أيقونة وحدة التحكم ليست مريحة كما هو الحال مع Scanner، إذ يمكنك فقط قراءة سطر واحد من المدخلات في كل مرة. ولا توجد طرق لقراءة الكلمات الفردية أو الأرقام. java.util.Scanner : • (Scanner(InputStream inيبني كائن من Scanner •String nextLineيقرأ السطر التالي من المدخلات •String nextيقرأ الكلمة الأولى من المدخلات •int nextInt وdouble nextDoubleيقرأ ويحول تسلسل الأحرف المتتابع الذي يمثل في أعداد صحيحه أو أعداد عشريه •boolean hasNext يختبر وجود كلمه آخرى في المدخلات •boolean hasNextInt وboolean hasNextDoubleيختبر تسلسل الأحرف هل يمثل أعداد صحيحه أو أعداد عشريه java.lang.System • static Console console عائد كائن Console يتفاعل مع المستخدم باستخدام console window إذا كان التفاعل ممكن، كائن Console يتوفر لأي برنامج يتم تشغيله عن طريق console window ، اما غير ذلك، فتوفره يعتمد على النظام المستخدم : java.io.Console • (static char[] readPassword(String prompt, Object... args• (static String readLine(String prompt, Object... argيعرض جمله تحث المستخدم على ادخال معلوماته مثل "what is your name" و يأخذ المدخلات من المستخدم، معاملات args تستخدم لتنسيق المخرجات تنسيق المخرجاتيمكنك طباعة عدد X إلى وحدة التحكم (System.out.print). ومع هذا الأمرتستطبع طباعة أكبر عدد ممكن وبأي عدد غير الصفر لهذا النوع. وعلى سبيل المثال double x = 10000.0 / 3.0 (System.out.print(x المخرج:3333.3333333333335 وتلك النقطة تعتبر مشكلة إذا كنت ترغب في عرض فئة الدولار والسنت، ففي الإصدارات القديمة من الجافا كان تنسيق الأرقام متعبا. ولحسن الحظ فإن نسخة الجافا 5.0 SE اعادت طريقة printf الموجوده في مكتبة C على سبيل المثال ;(System.out.printf("%8.2f", x يمكن طباعة X مع عرض ثمانية أحرف ودقة حرفان. المخرج:3333.33 ويمكنك توفير معاملات متعددة ل printf على سبيل المثال: ; ("Hello, %s. Next year, you'll be %d", name, age) كل من التنسيقات اللتي تبدأ ب (%a)يتم استبدالها مع المعاملات المناسبة. طابع التحويل يحدد القيمة المراد تحويلها على النحو التالي:f: عدد عشري، s: نص، d عدد صحيح:جدول 5-3 (التحويلات) بالاضافه إلى ذلك يمكنك تحديد علامه معينه للتحكم في مظهر المخرجات جدول 6-3 يستعرض ذلك على سبيل المثال يمكننا استخدام الفاصله على النحو التالي: System.out.printf("%,.2f", 10000.0 / 3.0); ذلك سيطبع 3,333.33 ملاحظة: يمكنك استخدام التحويلات لتنسيق الكائنات إذا طبق الكائن formattable interface ، من ثم يتم استدعاء داله format غير ذلك يتم استدعاء دالة toString لتقوم بتحويل الكائن إلى String حيث سيتم مناقشته في الفصل الخامس، السادس Flags for printf جدول 6-3: نستطيع استخدام داله String format لانشاء تنسيقات خاصه بالنصوص بدون طباعتها String message = String.format("Hello, %s. Next year, you'll be %d", name, age); على الرغم من أننا لم ندخل في تفاصيل Data type حيث اننا سنتحدث عنها في الفصل الرابع، ولكن سوف نناقش هنا بعض تنسيقات الوقت والتاريخ بالعادة نقوم باستخدام حرفين للتنسيق يبدأ من t وينتهي بأحد حروف جدول 7-3 على سبيل المثال:System.out.printf("%tc", new Date);يقوم بطباعه الوقت والتاريخ بالتنسيق التاليMon Feb 09 18:05:19 PST 2004 جدول 7-3 تحويلات الوقت والتاريخ كما ترون في الجدول 3-7، وبعض من الأشكال لا تشير إلا لجزء من تاريخ معين، على سبيل المثال، فقط يوم أو مجرد شهر. سيكون من المزعج بعض الشيء تزويد التاريخ عدة مرات والقيام بتنسيق كل جزء. لهذا السبب، سلسلة تنسيق (format string) يمكن أن تشير إلى مؤشر المعطى ليكون مهيأ. هذا المؤشر يجب أن يتبع ب ٪، ويجب أن يتم إنهاؤه عن طريق .علىسبيلالمثال،System.out.printf(". على سبيل المثال،System.out.printf("%1.علىسبيلالمثال،System.out.printf("s %2$tB %2$te, %2$tY", "Due date:", new Date); مطبوعاتتاريخ الاستحقاق: 9 فبراير 2004بدلا من ذلك، يمكنك استخدام <(flag). فإنه يشير إلى أن نفس المعامل الذي تم تنسيقه سابقا سيتم استخدامه مجددا وهذا هو، البيان System.out.printf("%s %tB % هذا يتجنب الخلط بينها وبين (flag) 0 . ملاحظة: عدد من قواعد التنسيق محددة. على سبيل المثال، في ألمانيا، والفاصل العشري هي (period) وليست فاصلة، ويتم تنسيق يوم الاثنين كمونتاج. سترى في المجلد الثاني كيفية التحكم في السلوك للتطبيقات الخاصة بك.مدخلات الملف ومخرجاته القراءة من ملف، وبناء الكائن Scanner من خلال الكائن File،على سبيل المثال:- Scanner in = new Scanner(new File("myfile.txt")); إذا كان اسم الملف يحتوي على backslashes ، تذكر أن يفصل كل واحد منهم باضافة backslashes اخر: "c:\\mydirectory\\myfile.txt". الآن يمكنك القراءة من الملف، وذلك باستخدام أي من دوال scanner التي تم وصفها سابقاً.الكتابة إلى ملف، وبناء الكائن PrintWriter. ويجب كتابة اسم الملف دخل construct PrintWriter out = new PrintWriter("myfile.txt"); إذا لم يكن الملف موجودا، يمكنك ببساطة استخدام إحدى الأوامر print، println، printf كما فعلته عند الطباعة System.out. تنبيه: يمكنك بناء داله Scanner مع سلسة من parameter ، ولكن يفسرScanner سلسلة مثل البيانات، وليس اسم الملف. على سبيل المثال، عند نداء Scanner in = new Scanner("myfile.txt"); // ERROR?ثم scanner ستشهد عشرة أحرف من البيانات: m,y,f'، الخ. ربما كان هذا هو ليس المقصود في هذه الحالة.ملاحظة: عند تحديد اسم ملف نسبي، مثل "myfile.txt", "mydirectory/myfile.txt", or "../myfile.txt", يتم وضع الملف نسبة إلى دليل الجافا الافتراضية إذا كنت أطلقت البرنامج من ايقونه الأوامر، من خلال تنفيذ JAVA MyProg ثم بداية directory هو directory الحالي لايقونه الأوامر. ومع ذلك، إذا كنت تستخدم بيئة تطوير متكاملة، يتم التحكم بالمسار بدءا من IDE.و يمكنك العثور على مسار الموقع عن طريق:- String dir = System.getProperty("user.dir"); إذا قمت بتشغيلgrief مع تحديد موقع الملفات، استخدام اسم مسار الجذري (absolute path names) للملف مثل "c:\\mydirectory\\myfile.txt" or "/home/me/mydirectory/myfile.txt". كما رأيتم فقط، يمكنك الوصول إلى الملفات بنفس السهولة التي يمكنك استخدامها System.in وSystem.out. هناك catch واحد فقط: إذا قمت ببناء scanner مع ملف غير موجود أو Print- اسم الملف الذي لا يمكن أن ينشأ، يحدث استثناء يرى compiler java هذه الاستثناءات أن تكون أكثر خطورة من استثناء«القسمة على صفر»، على سبيل المثال. في الفصل الحادي عشر سوف تتعلم طرق مختلفة لمعالجة الاستثناءات. أما الآن يجب أن يكون بإمكانك اعلام compiler java إن كنت على بينه من إمكانية إنشاء استثناء «لم يتم العثور على الملف». يمكنك القيام بذلك بوضع علامات في main method مع شرط رميه، ومن امثلة ذلك: public static void main(String[] args) throws FileNotFoundException { Scanner in = new Scanner(new File("myfile.txt")); ... } (ar) Die Syntax der Programmiersprache Java ist in der Java Language Specification definiert, ebenso wie die Semantik von Java. Dieser Artikel gibt einen Überblick über die Java-Syntax und stellt einige ihrer Besonderheiten heraus. Details sind in den Java-Sprachspezifikation von Sun Microsystems aufgeführt. (de) The syntax of Java refers to the set of rules defining how a Java program is written and interpreted. The syntax is mostly derived from C and C++. Unlike in C++, in Java there are no global functions or variables, but there are data members which are also regarded as global variables. All code belongs to classes and all values are objects. The only exception is the primitive types, which are not represented by a class instance for performance reasons (though can be automatically converted to objects and vice versa via ). Some features like operator overloading or unsigned integer types are omitted to simplify the language and to avoid possible programming mistakes. The Java syntax has been gradually extended in the course of numerous major JDK releases, and now supports capabilities such as generic programming and function literals (called lambda expressions in Java). Since 2017, a new JDK version is released twice a year, with each release bringing incremental improvements to the language. (en) Javaの文法の記事では、プログラミング言語Javaの構文(シンタックス、英: syntax)について解説する。また、それ以外についても解説している。 (ja) La sintassi del linguaggio di programmazione Java è l'insieme di regole che definiscono come un programma in Java debba essere scritto e successivamente interpretato. La sintassi è principalmente derivata da C e C++, ma a differenza di quest'ultimo, in Java non esistono funzioni o variabili globali, ma vi sono membri che sono considerati come variabili globali. Ogni elemento del codice fa parte di una classe, e tutti i valori sono implicitamente oggetti. L'unica eccezione è formata dai tipi di dato primitivi, che non sono rappresentati da un'istanza di una classe per motivi di performance (sebbene possano essere convertiti automaticamente in oggetti e viceversa tramite un processo denominato autoboxing). Alcune funzionalità quali l'operator overloading od i numeri interi senza segno vengono omessi per semplificare il linguaggio e per evitare possibili errori. (it) |
dbo:thumbnail | wiki-commons:Special:FilePath/Java_keywords_highlighted.svg?width=300 |
dbo:wikiPageExternalLink | https://archive.org/details/elementsofjavast00verm http://java.sun.com/docs/books/jls/index.html http://docs.oracle.com/javase/specs/ http://docs.oracle.com/javase/specs/jls/se7/html/jls-8.html%23jls-8.1.1.1 |
dbo:wikiPageID | 1079500 (xsd:integer) |
dbo:wikiPageLength | 71283 (xsd:nonNegativeInteger) |
dbo:wikiPageRevisionID | 1120369456 (xsd:integer) |
dbo:wikiPageWikiLink | dbr:Roman_numerals dbr:Enumerated_type dbr:Method_overriding dbr:Primitive_wrapper_class_in_Java dbr:Bill_Joy dbr:Binary_numeral_system dbr:Bitwise_operation dbr:Decimal dbr:UTF-16 dbr:Underscore dbr:Unicode dbr:Variable_(programming) dbr:Default_argument dbr:Interface_(Java) dbr:JNI dbr:?: dbc:Java_(programming_language) dbr:Generic_programming dbr:Object_(computer_science) dbr:Patrick_Naughton dbr:Gilad_Bracha dbr:Line_feed dbr:Call_stack dbr:Functional_programming dbr:Identifier dbr:Operator_overloading dbr:Pointer_(computer_programming) dbr:Synchronization_(computer_science) dbr:Tab_character dbr:Mutual_exclusion dbr:Backslash dbr:C++ dbr:C_(programming_language) dbr:C_Sharp_(programming_language) dbr:Dispose_pattern dbr:Garbage_collection_(computer_science) dbr:J2SE_1.4 dbr:J2SE_5.0 dbr:Exception_handling dbr:Form_feed dbr:Abstract_method dbr:Global_variable dbr:Floating-point dbr:Conditional_(programming) dbr:Source_code dbr:Type_erasure dbr:Relational_operator dbr:Herbert_Schildt dbr:Hexadecimal dbr:Java_(programming_language) dbr:Java_version_history dbr:Backspace dbc:Programming_language_syntax dbr:Syntax dbr:Java_Platform,_Standard_Edition dbr:Javadoc dbr:Top_type dbr:Class_variable dbr:Enhanced_for_loop dbr:Ternary_operator dbr:Inheritance_(computer_science) dbr:Instance_variable dbr:Metadata dbr:Object_type_(object-oriented_programming) dbr:Octal dbr:Carriage_return dbr:Case_sensitivity dbr:Manifest_file dbr:Serialization dbr:UTF-32 dbr:Virtual_function dbr:Type_inference dbr:IEEE_754 dbr:Immutable_object dbr:Reference_type dbr:Switch_statement dbr:Variadic_function dbr:Class_(computer_science) dbr:Unsigned_integer dbr:JDK dbr:Static_imports dbr:Assertion_(computing) dbr:Guy_Steele dbr:Function_literals dbr:Double_quote dbr:Polymorphism_in_object-oriented_programming dbr:Mapping_of_Unicode_character_planes dbr:Abstract_class dbr:Constructor_(computer_science) dbr:Destructor_(computer_science) dbr:Primitive_types dbr:Single_quote dbr:Thread_(computer_science) dbr:Currency_sign dbr:Naming_conventions_(programming) dbr:File:JavaAccessSpecifier.jpg dbr:File:Java_keywords_highlighted.svg |
dbp:wikiPageUsesTemplate | dbt:Cite_book dbt:ISBN dbt:Main dbt:Mono dbt:More_footnotes dbt:Portal dbt:Refbegin dbt:Refend dbt:Reflist dbt:See_also dbt:Short_description dbt:Wikibooks dbt:Java_(Sun) dbt:2,_3,_2},_{1,_2,_6},_{2,_4,_5 |
dcterms:subject | dbc:Java_(programming_language) dbc:Programming_language_syntax |
gold:hypernym | dbr:Set |
rdf:type | owl:Thing |
rdfs:comment | Die Syntax der Programmiersprache Java ist in der Java Language Specification definiert, ebenso wie die Semantik von Java. Dieser Artikel gibt einen Überblick über die Java-Syntax und stellt einige ihrer Besonderheiten heraus. Details sind in den Java-Sprachspezifikation von Sun Microsystems aufgeführt. (de) Javaの文法の記事では、プログラミング言語Javaの構文(シンタックス、英: syntax)について解説する。また、それ以外についても解説している。 (ja) المدخلات والمخرجات: لنجعل برامجنا أكثر إثارة للاهتمام، ونحن نريد قبول المدخلات و تنسيق مخرجات البرنامج بشكل صحيح. وبطبيعة الحال فإن استخدام البرامج الحديثة كواجهة المستخدم الرسومية(GUI) لجمع مدخلات المستخدم. ومع ذلك فإن برمجة مثل تلك المدخلات تتطلب المزيد من الأدوات والتقنياتأكثر مما لدينا في الوقت الحالي. لأن المطلوب الأول من العمل هوأن يصبح المبرمج أكثر دراية واعتيادية مع لغة البرمجة جافا، ونحن سنبدأ بتغطية المدخلات والمخرجات في الوقت الراهن. قراءة الإدخال: ومثال على ذلك متغير nextLine لقراءة سطر من المدخلات;("?System.out.print ("What is your name;String name = in.nextLine مثال على ذلك (ar) The syntax of Java refers to the set of rules defining how a Java program is written and interpreted. The syntax is mostly derived from C and C++. Unlike in C++, in Java there are no global functions or variables, but there are data members which are also regarded as global variables. All code belongs to classes and all values are objects. The only exception is the primitive types, which are not represented by a class instance for performance reasons (though can be automatically converted to objects and vice versa via ). Some features like operator overloading or unsigned integer types are omitted to simplify the language and to avoid possible programming mistakes. (en) La sintassi del linguaggio di programmazione Java è l'insieme di regole che definiscono come un programma in Java debba essere scritto e successivamente interpretato. La sintassi è principalmente derivata da C e C++, ma a differenza di quest'ultimo, in Java non esistono funzioni o variabili globali, ma vi sono membri che sono considerati come variabili globali. Ogni elemento del codice fa parte di una classe, e tutti i valori sono implicitamente oggetti. L'unica eccezione è formata dai tipi di dato primitivi, che non sono rappresentati da un'istanza di una classe per motivi di performance (sebbene possano essere convertiti automaticamente in oggetti e viceversa tramite un processo denominato autoboxing). Alcune funzionalità quali l'operator overloading od i numeri interi senza segno vengon (it) |
rdfs:label | المدخلات والمخرجات بلغة الجافا (ar) Java-Syntax (de) Java syntax (en) Sintassi Java (it) Javaの文法 (ja) |
rdfs:seeAlso | dbr:Java_(programming_language) |
owl:sameAs | freebase:Java syntax wikidata:Java syntax dbpedia-ar:Java syntax dbpedia-da:Java syntax dbpedia-de:Java syntax dbpedia-it:Java syntax dbpedia-ja:Java syntax dbpedia-ka:Java syntax dbpedia-vi:Java syntax https://global.dbpedia.org/id/4BHEZ |
prov:wasDerivedFrom | wikipedia-en:Java_syntax?oldid=1120369456&ns=0 |
foaf:depiction | wiki-commons:Special:FilePath/JavaAccessSpecifier.jpg wiki-commons:Special:FilePath/Java_keywords_highlighted.svg |
foaf:isPrimaryTopicOf | wikipedia-en:Java_syntax |
is dbo:wikiPageRedirects of | dbr:Primitive_types_in_Java dbr:Class_inheritance_in_Java dbr:Reference_types_in_Java dbr:Java.Lang.Object dbr:Control_structures_in_Java dbr:Java.lang.Object dbr:Static_import_enum dbr:Java_keyword dbr:Java_operators dbr:Java_semantics dbr:Java_syntax_and_semantics dbr:Operators_in_Java |
is dbo:wikiPageWikiLink of | dbr:Primitive_types_in_Java dbr:Object_orgy dbr:Primitive_wrapper_class_in_Java dbr:Comparison_of_Java_and_C++ dbr:SLF4J dbr:Class_(computer_programming) dbr:Class_inheritance_in_Java dbr:GNU_Classpath dbr:Reference_types_in_Java dbr:Apache_Groovy dbr:Comparison_of_programming_languages_(syntax) dbr:Syntax_(programming_languages) dbr:Heap_pollution dbr:Java.Lang.Object dbr:Java_(software_platform) dbr:Java_version_history dbr:Java_Modeling_Language dbr:Control_structures_in_Java dbr:Operator_(computer_programming) dbr:Variadic_function dbr:Java.lang.Object dbr:Static_import_enum dbr:Java_keyword dbr:Java_operators dbr:Java_semantics dbr:Java_syntax_and_semantics dbr:Operators_in_Java |
is rdfs:seeAlso of | dbr:Comparison_of_Java_and_C++ |
is foaf:primaryTopic of | wikipedia-en:Java_syntax |