ofer_shm פורסם 2011 ביולי 9 Share פורסם 2011 ביולי 9 שלום לכולם יש את המחלקה הבאהimport java.sql.ResultSet;import java.sql.SQLException;import java.util.Hashtable;import java.util.Map;public class card { public int cardid; public static int numberOfCards=0; public String input; public String output; public String blinds; static Map cards=new Hashtable(); sql db; card(int cardid) { numberOfCards++; this.cardid=cardid; System.out.println("card"+cardid+"created"); db=new sql(); ResultSet rs=this.db.selectQuery("select * from status where cardid='"+cardid+"'"); try { rs.next(); this.input=rs.getString("input"); this.output=rs.getString("output"); this.blinds=rs.getString("blinds"); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } if (cards.get(cardid)!=null) { cards.put(cardid, this); } } public void updateCard() { ResultSet rs=this.db.selectQuery("select * from status where cardid='"+this.cardid+"'"); try { rs.next(); this.input=rs.getString("input"); this.output=rs.getString("output"); this.blinds=rs.getString("blinds"); System.out.print(this); } catch (SQLException e) { // TODO Auto-gene`````1rated catch block e.printStackTrace(); } } public String toString() { String t="-------------------------\n"; t="card: "+this.cardid+"\n"; t=t+"input= "+this.input+"\n"; t=t+"output= "+this.output+"\n"; t=t+"--------------------------\n"; return t; } public static void updateCards() { for(int i=0;i<numberOfCards;i++) { card temp=(card)cards.get(i+201); temp.updateCard(); try { Thread.sleep(100); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } } updateCards(); }}כפי שניתן לראות הפונקציה האחרונה זו פונקציה סטטית שבסוף קוראת לעצמה וככה היא תמיד פועלת כמובן אני רוצה לקרוא להפעיל אותה ב- thread ככה שהיא לא תפריע לשאר התוכנית להמשיך לרוץמישהו יכול לעזור לי איך אני מפעיל את הפונקציה הנל בתור threadתודה קישור לתוכן שתף באתרים אחרים More sharing options...
שניצל פורסם 2011 ביולי 9 Share פורסם 2011 ביולי 9 אתה צריך ליצור מחלקה שמממשת את הממשק Runnable, ואז ליצור אובייקט Thread שמשתמש בה.http://www.go4expert.com/forums/showthread.php?t=4202 קישור לתוכן שתף באתרים אחרים More sharing options...
ofer_shm פורסם 2011 ביולי 9 מחבר Share פורסם 2011 ביולי 9 תודה על התגובהאבל בדוגמא שהבאת לי אני צריך ליצור מופע של המחלקה ואז פונקציה run תופעל בטרדמה שאני מנסה לעשות זה להפעיל פונקציה סטטית כטרד ....בלי ליצור מופע של המחלקה קישור לתוכן שתף באתרים אחרים More sharing options...
שניצל פורסם 2011 ביולי 9 Share פורסם 2011 ביולי 9 אתה חייב ליצור מחלקה כלשהי שמממשת את Runnable. זו לא חייבת להיות אותה המחלקה שבה הגדרת את המתודה הסטטית.הדרך הכי פשוטה לעשות את זה היא באמצעות מחלקה מקומית אנונימית. ראה דוגמה כאן:http://littletutorials.com/2008/03/09/anonymous-inner-classesשים לב לאופן שבו יצרו את האוביקט r. קישור לתוכן שתף באתרים אחרים More sharing options...
Recommended Posts
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.