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

اسئلتكم واستفساراتكم

مغلقرائج
بدأه علاء الصالحي في 8 نوفمبر 2008 · 958 رد · 57,657 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#551

أخي عصام ,

أنا تلخبطت مره يقول بدون Import و مره يقول بدون package statment :wacko: ..

واللي أتوقعه صح أنه بدون package statment :wink: ..

أشرح لي المقصود بها ؟ وشكراً جزيلاً :)

سبحآن الله وبحمده .. سبحآن الله العظيم .. ,

#552

package أو الحزمة هي طريقة لتجميع الفئات التي لها خصائص مشتركة، مثلا كل مكونات swing نجدها في الحزمة javax.swing، وكل مكونات awt نجدها في الحزمة java.awt

الpackage مرتبط بالfile system، هذا يعني أن كل package يمثل مجلد directory، فمثلا عندما تقولين أن الclass A تنتمي للحزمة mypackage فهذا يعني أن الملف A.class يوجد داخل مجلد إسمه mypackage

الpackage تفيد أيضا في تجنب الnaming conflits. مثلا لنفترض أنك حملت مكتبتين وتريدين استعمالهما، وكلتاهما تحتويان على فئة اسمها A. في برنامجك عندما ستستعملين هذه الفئة، فإن الcompiler لن يعرف اي واحدة يستعمل، هل A الموجودة في المكتبة الأولى، أم الموجودة في المكتبة الثانية. لكن باستعمال الpackages فيكفينا عمل import للحزمة التي نريد وبالتالي نكون حددنا الفئة A التي نريد استعمالها.

عندما لا تكتبين الpackage statement في بداية برنامجك، فإن الفئات تنتمي إلى الdefault package، وهو package بدون إسم تنتمي له كل الفئات الموجودة في نفس المجلد.

الpackage statement تحددين عن طريقها الحزمة التي تنتمي إليها الفئة التي تكتبين، بينما الimport تحددين بها الpackages التي ستسعملينها

package mypackage;	//this class belong to the package "mypackage"

import javax.swing.*;	//we import all the classes that exist in the package javax.swing

public class A {
....
}

والله أعلم :)

1
#553

مررررهـ شكراً يا أستاذي :) ..,

الله يوفقك دنيا وآخره ساعدتني كثير , وشرحك أكثر من رائع ..

الله يجزاك الجنة ..

تم تعديل هذه المشاركة بواسطة إشراقــه فجــر في 31 ديسمبر 2009 في 20:46

سبحآن الله وبحمده .. سبحآن الله العظيم .. ,

#554
class CA {
	private int x;

CA ( ){ }
	CA ( int x1 ){  x = x1;  }

    void set ( ){  x = 0;    }
	void set ( int x1 ){  x = x1;  }

	public void printAll ( ){
System.out.println("x = " + x);
}
}
class CB extends CA{
	private int y;
	CB( ){
		super();
		y =0;
	}
	CB(int y1){

		this(y1/2, y1);
		y = y1;
	}
	CB(int x1, int y1){
		super(x1);
		y = y1;
	}
	public void printAll(){
		super.printAll();
		System.out.println("y = " + y);
	}
}
public class InheritanceTest {
	public static void main(String args[]){
		CA a1 = new CA(3);
		a1.printAll();
		CB b1= new CB(6);
		b1.printAll();
		CA b2= new CB(8);
		b2.printAll();
	}
}

اريد عمل تتبع لأمر الطباعة

CA b2= new CB(8);

وجزاكم الله عنا ألف خير

والله في عون العبد ماكان العبد في عون اخيه

تم تعديل هذه المشاركة بواسطة Haha_saa في 1 يناير 2010 في 15:30

#555

السؤال غير واضح. ماذا تقصد بتتبع أمر الطباعة؟؟

#556

حياك الله اخي عصام

أقصد بارك الله فيك

من اين يطبع هل يبدأ بالكلاس الأول ثم يذهب للكلاس الثاني المورث ام ماذا

السؤال بطريقة أخرى :

اذا عملت Compile اابرنامج يظهر لي نتائج وارقام كيف اتتبع وصول هذه النتيجة

وهذا السؤال لا تخلو منه امنتحانات الجافا Trace

#557

ما عليك إلا أن تكتب أمر الطباعة في كل constructor وهكذا ستعرف ترتيب الconstructors

class CA {
	private int x;

	CA ( ) { System.out.println("CA()"); }
	CA (int x1) { x = x1; System.out.println("CA(int)"); }

	void set ( ){ x = 0;	}
	void set ( int x1 ){ x = x1; }

	public void printAll ( ){
		System.out.println("x = " + x);
	}
}

class CB extends CA {

	private int y;
	CB() {
 	super();
 	y =0;
 	System.out.println("CB()");
	}
	CB(int y1) {
 	this(y1/2, y1);
 	y = y1;
		System.out.println("CB(int)");
	}
	CB(int x1, int y1) {
 	super(x1);
 	y = y1;
		System.out.println("CB(int, int)");
	}
	public void printAll() {
 	super.printAll();
 	System.out.println("y = " + y);
	}
}

public class InheritanceTest {
	public static void main(String args[]){
 	CA a1 = new CA(3);
 	a1.printAll();
 	CB b1= new CB(6);
 	b1.printAll();
 	CA b2= new CB(8);
 	b2.printAll();
	}
}
#558

السلام عليكم

سنة سعيدة على الجميع بأذن الله

هل لى ان اعرف كيفية تلوين صف كامل فى جدول

مع العلم ان البيانات التى بداخله استدعيها من قاعدة البيانات

و انا اريد جعل صف واحد مميز عن بقية الصفوف عن طريق التلوين

و شكرا مقدما

Happy New Year

00020309t.gif

1958_1963.gif
#559
اسراء شلبى كتب:

السلام عليكم

سنة سعيدة على الجميع بأذن الله

هل لى ان اعرف كيفية تلوين صف كامل فى جدول

مع العلم ان البيانات التى بداخله استدعيها من قاعدة البيانات

و انا اريد جعل صف واحد مميز عن بقية الصفوف عن طريق التلوين

و شكرا مقدما

Happy New Year

public Component getTableCellRendererComponent(
JTable table, Object value, boolean isSelected, boolean hasFocus,int row,int col)
{

    String s = table.getModel().getValueAt(row,col).toString();

    if(s.equalsIgnoreCase("Fail")) {
         setForeground(Color.red);
    }else {
         setForeground(null);
    }

    return super.getTableCellRendererComponent(table, value, isSelected, hasFocus, 
row, col);

}
#560

ألف شكر أخوي عصام

#561
NullOne كتب:

public Component getTableCellRendererComponent(
JTable table, Object value, boolean isSelected, boolean hasFocus,int row,int col)
{

 String s = table.getModel().getValueAt(row,col).toString();

 if(s.equalsIgnoreCase("Fail")) {
 setForeground(Color.red);
 }else {
 setForeground(null);
 }

 return super.getTableCellRendererComponent(table, value, isSelected, hasFocus, 
row, col);

}

بما أن الغرض هو تلوين سطر كامل، أظن أنه الأولى التحقق من قيمة row وتلوين الخلفية حسب السطر الذي نريده.

if (row == 1) { // second line
	setForeground(Color.RED);
}

لتوضيح ما كتبه أخونا NullOne، يجب أن تعرفي أن JTable لا تقوم برسم خلايا الجدول بنفسها، بل يقوم بذلك TableCellRenderer، هذه الinterface تحتوي على الطريقة getTableCellRendererComponent التي تعيد المكون الذي سيتم رسمه في الخلية. لذلك إذا أردت تغيير طريقة رسم خلايا الجدول، يجب عمل override لتلك الطريقة.

مثلا

DefaultTableCellRenderer renderer = new DefaultTableCellRenderer() {

	public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {

		Component cell = super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
		if (row == 1)
			cell.setBackground(Color.RED);
		return cell;
	}
};
table.setDefaultRenderer(Object.class, renderer);

تم تعديل هذه المشاركة بواسطة herch في 1 يناير 2010 في 21:18

#562

اين المشكله في هاد الكود : حيث انو عندما اضيف اوبجكيت علي Queue يقوم بحذف الذي قبلو وبضيف الابوجكيت الجديد ويقوم بطباعه الاوبجكيت الجديد

public String[][] getData()
    {

    String s[][] = new String[Size][4];
    if (Front == null) 
    {
        JOptionPane.showMessageDialog(null,"the Queue is Empty,You must Add new Student Befor");        
    } 
    else 
    {
        int i = 0;
        Node aNode = Front;
        while (aNode != null) 
        {  
            Student tmp = aNode.s;
            s[0] = tmp.name; 
            s[1] = String.valueOf(tmp.Id);
            s[2] = String.valueOf(tmp.GradStudent);
            s[3] = tmp.Address;
            i += 1;
            aNode = aNode.link;
        }
    }
    return s;
}

بحيث تقوم هذه الداله باخذ البيانات من Queue واضاقتها في Array من ونوع String لكي يتم طباعتها في JTable

باقي الكلاسات هنا

Project Algorithms.zip

تم تعديل هذه المشاركة بواسطة Tigger_it في 1 يناير 2010 في 23:39

ab66i830gh93.gif

i25sctz8qnls.jpg

#563

اخي الكريم nullone المنتدى كله ما في اشي اصلا

عندما اقوم بتسجيل الدخول كان المنتدى فقط للمشاهدة لا تستطيع التعديل على اي شيء وحتى صفحتي الشخصية لا استطيع الوصول اليها بقلي انت غير مصرح الك

ما بعرف المنتدى ليش صار هيك قبل فترة كان افضل بكتير من هيك ياريت تحكيلنا مع الادارة يرجعوا مثل ما كان قبل هيك بتعمل معي معروف والله منا عارف اشتغل اشي فيه بس بدخل اقرا واطلع لاني مش قادر افيد واعبر عن اسالتي بالشكل المطلوب

كتبت بواسطة NullOne

ارسلت اليكي private message

ما في رسائل عندي اصلا او ممكن انا ما بعرف كيف اصلهن اذا في عندك فكرة ياريت تدعمنا

#564

@ Tigger_it

هل تريد أن تعمل Queue أم Linked list؟؟ لأنه حسب الكود الذي رأيت فانت تحاول عمل linked list

#565

اريد عمل Queue وليس linked list

تم تعديل هذه المشاركة بواسطة Tigger_it في 2 يناير 2010 في 10:41

ab66i830gh93.gif

i25sctz8qnls.jpg

#566
نسيم الجنة كتب:

اخي الكريم nullone المنتدى كله ما في اشي اصلا

عندما اقوم بتسجيل الدخول كان المنتدى فقط للمشاهدة لا تستطيع التعديل على اي شيء وحتى صفحتي الشخصية لا استطيع الوصول اليها بقلي انت غير مصرح الك

ما بعرف المنتدى ليش صار هيك قبل فترة كان افضل بكتير من هيك ياريت تحكيلنا مع الادارة يرجعوا مثل ما كان قبل هيك بتعمل معي معروف والله منا عارف اشتغل اشي فيه بس بدخل اقرا واطلع لاني مش قادر افيد واعبر عن اسالتي بالشكل المطلوب

كتبت بواسطة NullOne

ارسلت اليكي private message

ما في رسائل عندي اصلا او ممكن انا ما بعرف كيف اصلهن اذا في عندك فكرة ياريت تدعمنا

contact me on

praguelessons[at]gmail[dot]com

لا أعرف إذا مسموح وضع email address هنا . إذاً اعتذر إذا ممنوع . أرجو أن تضعي إسم نسيم الجنة في ال-subject كي أعرفك

#567

السلام عليكم ,,,,,,,, تحية طيبة

يا أخواني أريد احد يساعدني في هذا البرنامج

برنامج يقوم بإدخال جملة ويطبع اطول كلمة فيه مع طول الحروف مثلا على هذا البرنامج

import javax.swing.*;
 public class hi {
  public static void main (String args[]){
	  String h = JOptionPane.showInputDialog("Enter Your Sentence");








  JOptionPane.showMessageDialog(null,h);

  }
  }

وجزاكم الله خيرا

#568

لو سمحتو شرح () toString

كيفيه استخدامه و الفائده منه

albert_einstein.jpg

Untitled-AE.jpg
#569
pro.fahd كتب:

لو سمحتو شرح () toString

كيفيه استخدامه و الفائده منه

راجع الموضوع التالي -> ما فائدة toString

@ Haha_saa

أرنا محاولاتك، فلن تستفيد شيئا إذا اخدت الجواب جاهزا

تم تعديل هذه المشاركة بواسطة herch في 3 يناير 2010 في 03:14

#570

مرحبا أخي عصام

بصراحة انا تعقددت حتى الفكرة ليست لدي

أرجوك ساعدني ولك جزيل الشكر

#571

أولا يجب معرفة الكلمات الموجودة في الجملة. من أجل ذلك يمكن استعمال الطريقة String#split التي يجب أن نعطيها الفاصل الذي يفصل بين الكلمات، اي الفراغ، وهي تعيد مصفوفة String تحتوي على هاته الكلمات

String sentence = JOptionPane.showInputDialog("Enter Your Sentence");
String[] words = sentence.split(" ");

الآن لم يبق لك إلا أن تقارن أطوال الكلمات. لمعرفة طول كل كلمة استعمل الطريقة length() الخاصة بString

تم تعديل هذه المشاركة بواسطة herch في 3 يناير 2010 في 13:48

#572

السلام عليكم ,,,, تحية طيبة .

أخواني

أريد طباعة اطول كلمة في في الجملة التي في هذا البرنامج وأيضا طولها "عدد حروفها ".

أفيدوني بارك الله فيكم وهذي محاولتي :

import javax.swing.*;
 public class hi {
  public static void main (String args[]){
	  String sentence = ("Welcome to java Programming");
    int n1 = sentence.length();
    while (i<n1){
		counter =0;
		max=0 ;
		c = n1.charAt(i);
		while ( c!= " "){
			counter =counter+1 ;
		}
		if (counter > max ){

		max=counter ;
	   }
	      i = counter.char At(0);

   }





  JOptionPane.showMessageDialog(null,sentence+"\nLength:"+n1+max);

  }
  }

ولا يفتوني ان اشكر الاخ الحبيب عصام على التلميح السابق وافيدكم أنه نفس السؤال السابق "إلى الان ما وجدت حل له ! ):"

تم تعديل هذه المشاركة بواسطة Haha_saa في 5 يناير 2010 في 00:37

#573

كما قلت لك في الرد السابق، يجب أن تقسم الجملة أولا لتحصل على الكلمات، وذلك باستعمال split

#574

أرجو أنك توضح لي أخي عصام أكثر

علما بأن ال split لم أدرسها ولم أتعلم استخدامها ):

انا ادرس حاليا ProgrammingII

#575

يا أخي لماذا لا تبحث هنا في المنتدى

هناك الكثير من المواضيع التي تكلمت عن split

بالمناسبة الغالبية العظمى ممن تراهم هنا

لم يتعلموا split في الجامعة :lol:

تحياتي

حزمة المحرك الإصدارة 0.8

أي أحد يجد أني ظلمته فليراسلني

وبإذن الله لو كان له حق سيأخذه

728x90.png

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

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…