السلام عليكم :
سؤالي هو :
توجد خاصية من خواص البرمجة الهدفية OOP لا تقوم لغة جافا بدعمها .. ما هي ؟؟
و السلام ..
بنت اليمن ،،،،
السلام عليكم :
سؤالي هو :
توجد خاصية من خواص البرمجة الهدفية OOP لا تقوم لغة جافا بدعمها .. ما هي ؟؟
و السلام ..
بنت اليمن ،،،،
لا اله الا الله .. محمد رسول الله
(* ربِ اجعلني مقيم الصلاة و من ذريتي ، ربنا و تقبل دعـاء *)
يا حيّ يا قيـوم ... برحمتك استغيث ... اصلح لي شأني كله و لا تكلني الى نفسي طرفة عين
اين السؤال
انا بتهيألى انا ال OOP الجافا تدعمها كلها لأنها مبنية اصلا عاى ال OOP

<marquee>
مش موجود بصفة دايمة للامتحانات
</marquee>
بسم الله الرحمن الرحيم
وعليكم السلام ورحمة الله وبركاته
كما قال اخي ahabdeen الجافا تضم اغلب مفاهيم الOOP لكن بعضها لاتدعمها
مثل MULTIPLE INHERITANCE وطبعا من ناحية السيكيوريتي في كتابة الكود من الافضل ان تكون اللغة SINGLE INHERITANCE ويعني هذا في صالح اللغة (كما هي في الجافا).
من ناحية اخرى OPERATOR OVERLOADING ايضا لاتدعمها الجافا وكذلك STRUCT و TEMPLATE وعلى الارجح ان تضاف مثل هذه المفاهيم في النسخة القادمة للجافا 1.5 .
طبعا هذا لايقلل من قوة واهمية الجافا بحال من الاحوال فالجافا كما هو معروف
Pure Object Oriented Programming Language
بالتوفيق للجميع ..
السلام عليكم ...
الاخ الكريم Smart Dev ...
اشكرك جداً على الاجابة .... فانا لست من محترفي الـجافا .. ( مع الاسف ) ..
و اقول مثلك ...
فلكل لغة خواصها و ما يميزها ....اقتباسطبعا هذا لايقلل من قوة واهمية الجافا بحال من الاحوال فالجافا كما هو معروف
و السلام
بنت اليمن ...
لا اله الا الله .. محمد رسول الله
(* ربِ اجعلني مقيم الصلاة و من ذريتي ، ربنا و تقبل دعـاء *)
يا حيّ يا قيـوم ... برحمتك استغيث ... اصلح لي شأني كله و لا تكلني الى نفسي طرفة عين
سلام عليكم
شكرا لك SMART DEV
انا عندي تعليق بسيط
ولا اخونا كفا ووفا
الجافا ماهي pure OOL
لانها تدعم صفات من primitive Language
مثل IF....while loop....assignment
اللغة التي تدعم pure OOL
هي SMALL TALK
ولو كنت غلطان سددوني
وشكرا
لماذا تكون الليغو اللعبة الأكثر عبقرية في العالم؟
لأنها غير قابلة للتجزئة ، وتختلف فيما بينها بالألوان و الأشكال ، وتمتلك القدرة على تكوين علاقات مع بعض. نستطيع أن نقول أن أجزاء الليغو أبدية. وهي تشبه الذرات في تراكيبها للكون
-----
وائل بن أحمد كابلي
مستشار تطوير برمجيات | مايكروسوفت للخدمات الاستشارية
MCSE | MCTS SharePoint Infrastructure | MCTS SharePoint - Development | MCP | MSF Essentials
وعليكم السلام
الجافا لا تدعم تعدد الوراثه بشكل صريح ولكنها تدعمها بشكل اخر
عن طريق استخدام الواجهات (INTERFACE)
السلام عليكم :)
صحيح الجافا ليست Pure OOP
يعني مثلاً لو تبغى تستدعي اكثر من كلاس للكلاس الحالي ..ما تقدر تسويها
مثال:
public class A extends B,C ==> خطأ بالجافا .. بس تستدعي كلاس واحد فقط ...
مثال:
public class A extends B ==> هذا هو الصحيح و المتعارف عليه بالجافا
تم تعديل هذه المشاركة بواسطة صلاح الثبيتي في 21 ديسمبر 2003 في 23:50
بسم الله الرحمن الرحيم
شكرا اخي MEMONONO على التوضيح بالفعل الجافا ليست 100% OOP ولكن تستطيع القول بانها تقريبا كذلك.
Java is a 'nearly pure' OO language, not a truly pure one
قليل من اللغات تمثل OOP بشكل كامل (ولكن ايضا ليست 100%) مثل Eiffel و Forth
ولكنها تقترب بشكل كبير ماعدا ال Smalltalk والتي هي 100% Pure OOP
برايي أكبر مشكلة تتعارض معها الجافا مع OOP لاتنصب في عملية Multiple Inheretince لان مصممين الجافا يعيبون هذي العملية في السي لان عملية التوريث لاكثر من كلاس تعقد الكود وفي بعض الاحيان تؤدي الى Conflict مابين المتغيرات والدوال في عملية التوريث. بالاضافة الى ان حل هذي المشكلة بشكل غير مباشر ذكروه الاخوان.
المشكلة تكمن في primitive types مثل int و long والتي هي بالاصل لاتعتبر Objects وطبعا هذي لوحدها تكفي لان تقلل من كونها 100% Pure OOPL
لكن السؤال الذي يطرح نفسه (وما يطرحني معاه) هل نحن بحاجه الى 100% Pure OOPL؟
اتمنى سماع ارائكم لتعم الفائدة ..
اشكركم جميعا على المشاركة
تحياتي
Smart Developer
اقتباسيعني مثلاً لو تبغى تستدعي اكثر من كلاس للكلاس الحالي ..ما تقدر تسويهامثال:
public class A extends B,C ==> خطأ بالجافا .. بس تستدعي كلاس واحد فقط ...
مثال:
public class A extends B ==> هذا هو الصحيح و المتعارف عليه بالجافا
اخوي صلاح لعلك تقصد أن لاكلاس لا يستطيع أن يرث أكثر من كلاس .. كماهو في C++
ولعل امكانية ال implimentation تحقق الهدف :
public class extends superclass implements interface1,interface2,interface3
ومع ان الجافا لغة رائعة ومتمكنة لكن عيبها بصراحة هو استنزاف الوقت لعمل الواجهات user interface .
خـالد كتب:اقتباسيعني مثلاً لو تبغى تستدعي اكثر من كلاس للكلاس الحالي ..ما تقدر تسويهامثال:
public class A extends B,C ==> خطأ بالجافا .. بس تستدعي كلاس واحد فقط ...
مثال:
public class A extends B ==> هذا هو الصحيح و المتعارف عليه بالجافا
اخوي صلاح لعلك تقصد أن لاكلاس لا يستطيع أن يرث أكثر من كلاس .. كماهو في C++
ولعل امكانية ال implimentation تحقق الهدف :
public class extends superclass implements interface1,interface2,interface3ومع ان الجافا لغة رائعة ومتمكنة لكن عيبها بصراحة هو استنزاف الوقت لعمل الواجهات user interface .
السلام عليكم :)
كلامك صحيح..
بالنسبه لبناء الواجهات، فعندك عده برامج من ضمنها JBuilder و Net Beans ... لكن انا الى الان ما عرفت اشتغل عليهم :( .. و كنت اتمنى القى برنامج شبه محرر الـ NET.
السلام عليكم ورحمة الله وبركاته
اريد حل بعض البرنامج
اخواني الأعزاء اريدكم في حل هذه السؤال مع خالص الشكر
اريد حل هذه البرنامج علي لغة الجافا
will determine the average for 3 sections
each of 10 students and calculates the maximum
grade in each. your program should inputs this information
for each section's student and displays the average
and max of each section. user input dialog to input
the data.
انا حاولت احله ولم اتوصل الي نتيجه مع العل اني حليت الكثر من نصف الرنامج
import javax.swing.JOptionPane;
public class student {
public static void main( String args[] )
{
int student;
int total; // sum of grades input by user
int gradeCounter; // number of grade to be entered next
int grade; // grade value
int average; // average of grades
String student_Name = "";
String strOutput = "";
for ( int counter = 1; counter <= 3; counter++ )
{
Emp_Name = JOptionPane.showInputDialog("Enter students Name " );
String gradeString; // grade typed by user
// initialization phase
student=0;
total = 0; // initialize total
gradeCounter = 1; // initialize loop counter
// processing phase
while ( gradeCounter <= 10 ) { // loop 10 times
// prompt for input and read grade from user
gradeString = JOptionPane.showInputDialog(
"Enter integer grade: " );
// convert gradeString to int
grade = Integer.parseInt( gradeString );
total = total + grade; // add grade to total
gradeCounter = gradeCounter + 1; // increment counter
} // end while
// termination phase
average = total / 10; // integer division
// display average of exam grades
JOptionPane.showMessageDialog( null, "Class average is " + average,
"Class Average", JOptionPane.INFORMATION_MESSAGE );
System.exit( 0 ); // terminate the program
} // end main
} // end class student
// display results
الرجاء الرد علي الأيمال التالي
almu7taseb@gmail.com
almu7taseb@hotmail.com
الحمدالله يا شباب حليت السؤال
هذا الموضوع مغلق.