الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

مجرد سؤال

مغلق
بدأه بنت اليمن في 21 ديسمبر 2003 · 14 رد · 3,303 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم :

سؤالي هو :

توجد خاصية من خواص البرمجة الهدفية OOP لا تقوم لغة جافا بدعمها .. ما هي ؟؟

و السلام ..

بنت اليمن ،،،،

لا اله الا الله .. محمد رسول الله

(* ربِ اجعلني مقيم الصلاة و من ذريتي ، ربنا و تقبل دعـاء *)

يا حيّ يا قيـوم ... برحمتك استغيث ... اصلح لي شأني كله و لا تكلني الى نفسي طرفة عين

#2

اين السؤال

#3

انا بتهيألى انا ال OOP الجافا تدعمها كلها لأنها مبنية اصلا عاى ال OOP

ahabdeen.jpg

<marquee>

مش موجود بصفة دايمة للامتحانات

</marquee>

#4

بسم الله الرحمن الرحيم

وعليكم السلام ورحمة الله وبركاته

كما قال اخي ahabdeen الجافا تضم اغلب مفاهيم الOOP لكن بعضها لاتدعمها

مثل MULTIPLE INHERITANCE وطبعا من ناحية السيكيوريتي في كتابة الكود من الافضل ان تكون اللغة SINGLE INHERITANCE ويعني هذا في صالح اللغة (كما هي في الجافا).

من ناحية اخرى OPERATOR OVERLOADING ايضا لاتدعمها الجافا وكذلك STRUCT و TEMPLATE وعلى الارجح ان تضاف مثل هذه المفاهيم في النسخة القادمة للجافا 1.5 .

طبعا هذا لايقلل من قوة واهمية الجافا بحال من الاحوال فالجافا كما هو معروف

Pure Object Oriented Programming Language

بالتوفيق للجميع ..

#5

السلام عليكم ...

الاخ الكريم Smart Dev ...

اشكرك جداً على الاجابة .... فانا لست من محترفي الـجافا .. ( مع الاسف ) ..

و اقول مثلك ...

اقتباس
طبعا هذا لايقلل من قوة واهمية الجافا بحال من الاحوال فالجافا كما هو معروف
فلكل لغة خواصها و ما يميزها ....

و السلام

بنت اليمن ...

لا اله الا الله .. محمد رسول الله

(* ربِ اجعلني مقيم الصلاة و من ذريتي ، ربنا و تقبل دعـاء *)

يا حيّ يا قيـوم ... برحمتك استغيث ... اصلح لي شأني كله و لا تكلني الى نفسي طرفة عين

#6

سلام عليكم

شكرا لك SMART DEV

انا عندي تعليق بسيط

ولا اخونا كفا ووفا

الجافا ماهي pure OOL

لانها تدعم صفات من primitive Language

مثل IF....while loop....assignment

اللغة التي تدعم pure OOL

هي SMALL TALK

ولو كنت غلطان سددوني

وشكرا

لماذا تكون الليغو اللعبة الأكثر عبقرية في العالم؟

لأنها غير قابلة للتجزئة ، وتختلف فيما بينها بالألوان و الأشكال ، وتمتلك القدرة على تكوين علاقات مع بعض. نستطيع أن نقول أن أجزاء الليغو أبدية. وهي تشبه الذرات في تراكيبها للكون

-----

وائل بن أحمد كابلي

مستشار تطوير برمجيات | مايكروسوفت للخدمات الاستشارية

MCSE | MCTS SharePoint Infrastructure | MCTS SharePoint - Development | MCP | MSF Essentials

http://blogs.msdn.com/wael

@waelkabli

#7

وعليكم السلام

الجافا لا تدعم تعدد الوراثه بشكل صريح ولكنها تدعمها بشكل اخر

عن طريق استخدام الواجهات (INTERFACE)

#8

السلام عليكم :)

صحيح الجافا ليست Pure OOP

يعني مثلاً لو تبغى تستدعي اكثر من كلاس للكلاس الحالي ..ما تقدر تسويها

مثال:

public class A extends B,C ==> خطأ بالجافا .. بس تستدعي كلاس واحد فقط ...

مثال:

public class A extends B ==> هذا هو الصحيح و المتعارف عليه بالجافا

تم تعديل هذه المشاركة بواسطة صلاح الثبيتي في 21 ديسمبر 2003 في 23:50

#10

بسم الله الرحمن الرحيم

شكرا اخي 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

#11
اقتباس
يعني مثلاً لو تبغى تستدعي اكثر من كلاس للكلاس الحالي ..ما تقدر تسويها

مثال:

public class A extends B,C ==> خطأ بالجافا .. بس تستدعي كلاس واحد فقط ...

مثال:

public class A extends B ==> هذا هو الصحيح و المتعارف عليه بالجافا

اخوي صلاح لعلك تقصد أن لاكلاس لا يستطيع أن يرث أكثر من كلاس .. كماهو في C++

ولعل امكانية ال implimentation تحقق الهدف :

public class extends superclass implements interface1,interface2,interface3

ومع ان الجافا لغة رائعة ومتمكنة لكن عيبها بصراحة هو استنزاف الوقت لعمل الواجهات user interface .

#12
خـالد كتب:
اقتباس
يعني مثلاً لو تبغى تستدعي اكثر من كلاس للكلاس الحالي ..ما تقدر تسويها

مثال:

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.

#14

السلام عليكم ورحمة الله وبركاته

اريد حل بعض البرنامج

اخواني الأعزاء اريدكم في حل هذه السؤال مع خالص الشكر

اريد حل هذه البرنامج علي لغة الجافا

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

#15

الحمدالله يا شباب حليت السؤال

هذا الموضوع مغلق.

مواضيع مشابهة