??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲成a人片在线不卡,国产精品亚洲AV三区,亚洲福利在线播放http://m.tkk7.com/min-water/如果一个h不知道他要驶向哪个码_那么M风都不会是顺风?/description>zh-cnSat, 10 May 2025 19:17:29 GMTSat, 10 May 2025 19:17:29 GMT60初学|络~程的两个小E序Q二Q?---TCP/IPhttp://m.tkk7.com/min-water/articles/337958.htmlMineralwasserMineralwasserFri, 12 Nov 2010 15:57:00 GMThttp://m.tkk7.com/min-water/articles/337958.htmlhttp://m.tkk7.com/min-water/comments/337958.htmlhttp://m.tkk7.com/min-water/articles/337958.html#Feedback0http://m.tkk7.com/min-water/comments/commentRss/337958.htmlhttp://m.tkk7.com/min-water/services/trackbacks/337958.htmll过一个多月枯燥的Java~程基础学习Q终于学到net了,呵呵.. .. ..挺好?

上服务器端程序:

TestTCPServer

q行l果Q?/p>

image

上客LE序Q?

TestTCPClient

q行l果Q?/p>

image

Q客LQ?/p>

image

Q服务器端)



Mineralwasser 2010-11-12 23:57 发表评论
]]>
初学|络~程的两个小E序Q一Q?---UDP/IPhttp://m.tkk7.com/min-water/articles/337956.htmlMineralwasserMineralwasserFri, 12 Nov 2010 15:49:00 GMThttp://m.tkk7.com/min-water/articles/337956.htmlhttp://m.tkk7.com/min-water/comments/337956.htmlhttp://m.tkk7.com/min-water/articles/337956.html#Feedback0http://m.tkk7.com/min-water/comments/commentRss/337956.htmlhttp://m.tkk7.com/min-water/services/trackbacks/337956.htmll过一个多月枯燥的Java~程基础学习Q终于学到net了,呵呵.. .. ..挺好?/p>

上服务器端程序:

ServerSocket01

q行l果Q?/p>

image

上客LE序Q?/p>

ClientSocket01

q行l果Q?/p>

image Q客LQ?/p>

image Q服务器端)



Mineralwasser 2010-11-12 23:49 发表评论
]]>
生?消费者(producer-consumerQ问?/title><link>http://m.tkk7.com/min-water/articles/337955.html</link><dc:creator>Mineralwasser</dc:creator><author>Mineralwasser</author><pubDate>Fri, 12 Nov 2010 15:30:00 GMT</pubDate><guid>http://m.tkk7.com/min-water/articles/337955.html</guid><wfw:comment>http://m.tkk7.com/min-water/comments/337955.html</wfw:comment><comments>http://m.tkk7.com/min-water/articles/337955.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.tkk7.com/min-water/comments/commentRss/337955.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/min-water/services/trackbacks/337955.html</trackback:ping><description><![CDATA[<p>      生?消费者(producer-consumerQ问题,两个q程׃n一个公q固定大小的缓冲区。其中一个是生者,用于消息放入缓冲区Q另外一个是消费者,用于从缓冲区中取出消息?/p> <p>      q样应该是生产者生产一个品,然后消费者取C个品,然后再生产、再消费Q这个看似很理所当然的逻辑在现实中是必然的Q但是在E序里却出现了问题。aQ生产者生产了很多消费者却没有取,bQ生产这q没有生产完一个完整的产品消费者却已经取走了好几次了,q样取走的品当然是不合格的?/p> <p>      下面q生和消贚w子ؓ例,看看E序是怎么q行的吧.. .. ..</p> <div id="d9f9nn9" class="cnblogs_code"><pre><img id="Code_Closed_Image_663034" onclick="this.style.display='none'; document.getElementById('Code_Closed_Text_663034').style.display='none'; document.getElementById('Code_Open_Image_663034').style.display='inline'; document.getElementById('Code_Open_Text_663034').style.display='inline';" align="top" src="http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif" width="11" height="16"><img style="display: none" id="Code_Open_Image_663034" onclick="this.style.display='none'; document.getElementById('Code_Open_Text_663034').style.display='none'; getElementById('Code_Closed_Image_663034').style.display='inline'; getElementById('Code_Closed_Text_663034').style.display='inline';" align="top" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif" width="11" height="16"><span id="Code_Closed_Text_663034" class="cnblogs_code_Collapse">Demo01</span><span style="display: none" id="Code_Open_Text_663034"> <span style="color: #0000ff">package</span> demo; <span style="color: #0000ff">class</span> Shoes{ <span style="color: #008000">// 鞋子c,两个属性:使用者(?奻IQ大(?)</span> String user=<span style="color: #0000ff">null</span>; String size=<span style="color: #0000ff">null</span>; } <span style="color: #0000ff">class</span> Pro <span style="color: #0000ff">implements</span> Runnable{ <span style="color: #008000">// 生者,生</span> Shoes shoe = <span style="color: #0000ff">null</span>; <span style="color: #0000ff">public</span> Pro(Shoes s){ <span style="color: #0000ff">this</span>.shoe=s; } <span style="color: #0000ff">public</span> <span style="color: #0000ff">void</span> run(){ <span style="color: #0000ff">int</span> i=0; <span style="color: #0000ff">while</span>(<span style="color: #0000ff">true</span>){ <span style="color: #0000ff">if</span>(i==0){ <span style="color: #008000">// 男hI的鞋子是大L</span> shoe.user="<span style="color: #8b0000">男式</span>"; shoe.size="<span style="color: #8b0000">大号</span>"; i=1; }<span style="color: #0000ff">else</span>{ <span style="color: #008000">// 女hI的鞋子是小L</span> shoe.user="<span style="color: #8b0000">奛_</span>"; shoe.size="<span style="color: #8b0000">号</span>"; i=0; } } } } <span style="color: #0000ff">class</span> Cus <span style="color: #0000ff">implements</span> Runnable{ Shoes shoe=<span style="color: #0000ff">null</span>; <span style="color: #0000ff">public</span> Cus(Shoes s){ <span style="color: #0000ff">this</span>.shoe=s; } <span style="color: #0000ff">public</span> <span style="color: #0000ff">void</span> run(){ <span style="color: #0000ff">while</span>(<span style="color: #0000ff">true</span>){ System.out.println(shoe.user+"<span style="color: #8b0000">--></span>"+shoe.size); } } } <span style="color: #0000ff">public</span> <span style="color: #0000ff">class</span> Demo01 { <span style="color: #008000">/**生?消费者问? producer-consumer * @param args */</span> <span style="color: #0000ff">public</span> <span style="color: #0000ff">static</span> <span style="color: #0000ff">void</span> main(String[] args) { <span style="color: #008000">// 讄鞋子的一个生产者和一个消费者,q启动两个线E,分别q行生和消?/span> Shoes shoe = <span style="color: #0000ff">new</span> Shoes(); Pro p = <span style="color: #0000ff">new</span> Pro(shoe); Cus c = <span style="color: #0000ff">new</span> Cus(shoe); <span style="color: #0000ff">new</span> Thread(p).start(); <span style="color: #0000ff">new</span> Thread(c).start(); } } </pre></div><br></span> <p>l果Q?/p> <p><a href="http://m.tkk7.com/images/blogjava_net/min-water/WindowsLiveWriter/Java_12BB8/image_2.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://m.tkk7.com/images/blogjava_net/min-water/WindowsLiveWriter/Java_12BB8/image_thumb.png" width="143" height="244"></a> </p> <p>      从结果中可以看到Q第一ơ取时已l生产完一双男鞋,女鞋q没有生产完取C女鞋Q第二次到第四次消费都是男鞋Q看来是要么生的太多了Q没有取赎ͼ要么是取的太快Q只生了一双男鞋却取了四次?/p> <p>      q样的程序显然是不符合实际的Q所以就要加以改q?/p> <p>      应该是生产时Q生产者进入R间ƈ把R间的门上锁,生一双后生者出来,消费者进入到车间q把车间门上锁,取到鞋子后出来,q样车间里只有一个hQ要么生产者要么消费者,q样可以保证生产合格的产品?/p> <p>改进的程序:</p> <div id="np1vfjp" class="cnblogs_code"><pre><img id="Code_Closed_Image_573156" onclick="this.style.display='none'; document.getElementById('Code_Closed_Text_573156').style.display='none'; document.getElementById('Code_Open_Image_573156').style.display='inline'; document.getElementById('Code_Open_Text_573156').style.display='inline';" align="top" src="http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif" width="11" height="16"><img style="display: none" id="Code_Open_Image_573156" onclick="this.style.display='none'; document.getElementById('Code_Open_Text_573156').style.display='none'; getElementById('Code_Closed_Image_573156').style.display='inline'; getElementById('Code_Closed_Text_573156').style.display='inline';" align="top" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif" width="11" height="16"><span id="Code_Closed_Text_573156" class="cnblogs_code_Collapse">Demo02</span><span style="display: none" id="Code_Open_Text_573156"> <span style="color: #0000ff">package</span> demo2; <span style="color: #0000ff">class</span> Shoes{ <span style="color: #008000">// 鞋子c,两个属性:使用者(?奻IQ大(?)</span> String user=<span style="color: #0000ff">null</span>; String size=<span style="color: #0000ff">null</span>; <span style="color: #0000ff">private</span> <span style="color: #0000ff">boolean</span> flag = <span style="color: #0000ff">true</span>; <span style="color: #0000ff">public</span> <span style="color: #0000ff">synchronized</span> <span style="color: #0000ff">void</span> set(String user,String size){ <span style="color: #008000">//如果flag的g是true则要{待 </span> <span style="color: #0000ff">if</span> (!flag){ <span style="color: #008000">//{待 </span> <span style="color: #0000ff">try</span>{ wait(); }<span style="color: #0000ff">catch</span>(Exception e){} } <span style="color: #0000ff">try</span>{ Thread.sleep(100); }<span style="color: #0000ff">catch</span> (Exception e){} <span style="color: #008000">// 如果向下l箋执行了,则表C可以设|?flag = true </span> <span style="color: #0000ff">this</span>.user = user; <span style="color: #0000ff">this</span>.size = size; <span style="color: #008000">// 修改讄的标? </span> flag = <span style="color: #0000ff">false</span>; <span style="color: #008000">//唤醒其他U程 </span> notify(); } <span style="color: #008000">//讄一个输出方? </span> <span style="color: #0000ff">public</span> <span style="color: #0000ff">synchronized</span> <span style="color: #0000ff">void</span> get(){ <span style="color: #008000">// 如果flag的gؓtrue的时候,表示要等? </span> <span style="color: #0000ff">if</span>(flag){ <span style="color: #0000ff">try</span>{ wait(); }<span style="color: #0000ff">catch</span>(Exception e){} } <span style="color: #0000ff">try</span>{ Thread.sleep(100); }<span style="color: #0000ff">catch</span> (Exception e){} <span style="color: #008000">//如果向下执行了,则表C允许取? </span> System.out.println(<span style="color: #0000ff">this</span>.user+"<span style="color: #8b0000"> --> </span>"+<span style="color: #0000ff">this</span>.size); <span style="color: #008000">//改变标志Q表C可以生产了 </span> flag = <span style="color: #0000ff">true</span>; notify(); } } <span style="color: #0000ff">class</span> Pro <span style="color: #0000ff">implements</span> Runnable{ <span style="color: #008000">// 生者,生</span> Shoes shoe = <span style="color: #0000ff">null</span>; <span style="color: #0000ff">public</span> Pro(Shoes s){ <span style="color: #0000ff">this</span>.shoe=s; } <span style="color: #0000ff">public</span> <span style="color: #0000ff">void</span> run(){ <span style="color: #0000ff">int</span> i=0; <span style="color: #0000ff">while</span>(<span style="color: #0000ff">true</span>){ <span style="color: #0000ff">if</span>(i==0){ <span style="color: #008000">// 男hI的鞋子是大L</span> shoe.set("<span style="color: #8b0000">男式</span>", "<span style="color: #8b0000">大号</span>"); i=1; }<span style="color: #0000ff">else</span>{ <span style="color: #008000">// 女hI的鞋子是小L</span> shoe.set("<span style="color: #8b0000">奛_</span>", "<span style="color: #8b0000">号</span>"); i=0; } } } } <span style="color: #0000ff">class</span> Cus <span style="color: #0000ff">implements</span> Runnable{ Shoes shoe=<span style="color: #0000ff">null</span>; <span style="color: #0000ff">public</span> Cus(Shoes s){ <span style="color: #0000ff">this</span>.shoe = s; } <span style="color: #0000ff">public</span> <span style="color: #0000ff">void</span> run(){ <span style="color: #0000ff">while</span>(<span style="color: #0000ff">true</span>){ shoe.get(); } } } <span style="color: #0000ff">public</span> <span style="color: #0000ff">class</span> Demo02 { <span style="color: #008000">/**生?消费者问? producer-consumer * @param args */</span> <span style="color: #0000ff">public</span> <span style="color: #0000ff">static</span> <span style="color: #0000ff">void</span> main(String[] args) { <span style="color: #008000">// 讄鞋子的一个生产者和一个消费者,q启动两个线E,分别q行生和消?/span> Shoes shoe = <span style="color: #0000ff">new</span> Shoes(); Pro p = <span style="color: #0000ff">new</span> Pro(shoe); Cus c = <span style="color: #0000ff">new</span> Cus(shoe); <span style="color: #0000ff">new</span> Thread(p).start(); <span style="color: #0000ff">new</span> Thread(c).start(); } } </pre></div><br></span> <p></p> <p>q行l果Q?/p> <p><a href="http://m.tkk7.com/images/blogjava_net/min-water/WindowsLiveWriter/Java_12BB8/image_4.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://m.tkk7.com/images/blogjava_net/min-water/WindowsLiveWriter/Java_12BB8/image_thumb_1.png" width="148" height="244"></a></p> <img src ="http://m.tkk7.com/min-water/aggbug/337955.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/min-water/" target="_blank">Mineralwasser</a> 2010-11-12 23:30 <a href="http://m.tkk7.com/min-water/articles/337955.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>多线E及实现多线E的Ҏ(gu)http://m.tkk7.com/min-water/articles/337543.htmlMineralwasserMineralwasserMon, 08 Nov 2010 08:33:00 GMThttp://m.tkk7.com/min-water/articles/337543.htmlhttp://m.tkk7.com/min-water/comments/337543.htmlhttp://m.tkk7.com/min-water/articles/337543.html#Feedback0http://m.tkk7.com/min-water/comments/commentRss/337543.htmlhttp://m.tkk7.com/min-water/services/trackbacks/337543.html多线E:减轻~写交互频繁、涉及面多的E序的难度;充分利用计算源?/p>

      一个操作系l,可以有多个进E,每个q程上边会有多个U程。一个程序的q行臛_启动两个U程QmainU程和gcQ守护)U程?/p>

U程分ؓ前台U程和后台线E(守护U程Q:

对JavaE序来说Q只要有一个前台线E在q行Q这个进E就不会l束Q?/p>

如果一个进E只有后台线E在q行Q这个进E就会结束;

如果某个U程对象在启动(调用start()Ҏ(gu)Q之前调用setDaemon(true);Ҏ(gu)Q这个线E就变成了后台线E?/p>

U程的状态{换:

image 

    * 多线E的Ҏ(gu)有两U:

1、承Threadc,q写run()Ҏ(gu)Q?/p>

2、实现Runnable接口?/p>

虽然有两U不同的Ҏ(gu)Q但是它们的多线E启动方法是相同的,都是同归ThreadcL启动多线E的[p.start();]?/p>

start使盖县程开始执行是指Java虚拟用该U程的run()Ҏ(gu)Q?/p>

start只是使线E就l,什么时候开始执行由CPU军_?/p>

U程只能启动一ơ;如果启动多次Q程序在~译时不会出现错误,但是执行时会出现错误?/p>

两种Ҏ(gu)的不同在于:

Ҏ(gu)1的缺点:Java为单l承Q当一个想实现多线E的cȝ承了Threadcd׃可以再承其他类Q这样就不灵z,没有扩展性了Q?/p>

Ҏ(gu)2的优点:实现Runnable接口不仅可以再承其他类Q还可以实现资源׃n?/p>

M实现Runnable接口比承Threadc要更好一些,所以尽量要使用Runnable而不用Thread?/p>

下面p两种Ҏ(gu)举例说明Q?/p>

Ҏ(gu)1Q承Threadc,重写run()Ҏ(gu)?/p>

class MyThread11 extends Thread{
    
private int time;
    
public MyThread11 (String name,int time){
        
super(name);
        
this.time=time;
    }

    
public void run(){
        
try {
            Thread.sleep(
this.time);
        }
 catch (InterruptedException e) {
            e.printStackTrace();
        }

        System.out.println(Thread.currentThread().getName()
+"-->q行Qgq?nbsp;"+this.time+"毫秒?/span>");
    }

}

public class MyDemo01 {
    
public static void main(String[] args) {
        MyThread11 mt1 
= new MyThread11("T--A",1000);
        MyThread11 mt2 
= new MyThread11("T--B",2000);
        MyThread11 mt3 
= new MyThread11("T--C",3000);
        mt1.start();
        mt2.start();
        mt3.start();
    }

}

E序q行l果Q(每隔一U打C行,打印完后E序l束Q?br /> image 

Ҏ(gu)2Q实现Runnable接口?br />
class MyThread22 implements Runnable{
    
private int time;
    
private String name;
    
public MyThread22 (String name,int time){
        
this.name=name;
        
this.time=time;
    }

    
public void run() {
        
try {
            Thread.sleep(
this.time);
        }
 catch (InterruptedException e) {
            e.printStackTrace();
        }

        System.out.println(
this.name+"-->q行Qgq?nbsp;"+this.time+"毫秒?/span>");
    }
    
}

public class MyDemo02 {
    
public static void main(String[] args) {
        MyThread22 mt1 
= new MyThread22("T--A",1000);
        MyThread22 mt2 
= new MyThread22("T--B",2000);
        MyThread22 mt3 
= new MyThread22("T--C",3000);
        
new Thread(mt1).start();
        
new Thread(mt2).start();
        
new Thread(mt3).start();
    }

}


E序q行l果Q?

Q每隔一U打C行,打印完后E序l束Q?/p> image 

Mineralwasser 2010-11-08 16:33 发表评论
]]>
阶段ȝhttp://m.tkk7.com/min-water/articles/337427.htmlMineralwasserMineralwasserSat, 06 Nov 2010 14:12:00 GMThttp://m.tkk7.com/min-water/articles/337427.htmlhttp://m.tkk7.com/min-water/comments/337427.htmlhttp://m.tkk7.com/min-water/articles/337427.html#Feedback0http://m.tkk7.com/min-water/comments/commentRss/337427.htmlhttp://m.tkk7.com/min-water/services/trackbacks/337427.html
下面写一个小E序Q把已经学过的知识都捎带着复习一?. .. ..

先说E序的要求:小的简单的学生信息理pȝ。在控制C昄四个选项Q分别ؓ增加、浏览、修攏V退出系l;然后选择相应的功能进行操?
  阅读全文

Mineralwasser 2010-11-06 22:12 发表评论
]]>
JAVA技术(IO~程Q?/title><link>http://m.tkk7.com/min-water/articles/337371.html</link><dc:creator>Mineralwasser</dc:creator><author>Mineralwasser</author><pubDate>Fri, 05 Nov 2010 10:02:00 GMT</pubDate><guid>http://m.tkk7.com/min-water/articles/337371.html</guid><wfw:comment>http://m.tkk7.com/min-water/comments/337371.html</wfw:comment><comments>http://m.tkk7.com/min-water/articles/337371.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://m.tkk7.com/min-water/comments/commentRss/337371.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/min-water/services/trackbacks/337371.html</trackback:ping><description><![CDATA[     摘要: 的作用Q如何从能够发送字节序列的M数据源取得输入,以及如何输出发送到能够接收字节序列的Q何目的地。即Q输?输出问题?<br>字节序列的源和目的地可以是文件、网l连接、内存块{,存储在文件中的信息和从网l连接中接收的信息,从本质上处理Ҏ(gu)是相同的?<br>数据最l都保存Z个字节序列,但是在程序设计中应当用更高的数据结构来处理Q如字符或对象序列等?nbsp; <a href='http://m.tkk7.com/min-water/articles/337371.html'>阅读全文</a><img src ="http://m.tkk7.com/min-water/aggbug/337371.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/min-water/" target="_blank">Mineralwasser</a> 2010-11-05 18:02 <a href="http://m.tkk7.com/min-water/articles/337371.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>银行排队叫号pȝhttp://m.tkk7.com/min-water/articles/336710.htmlMineralwasserMineralwasserMon, 01 Nov 2010 09:16:00 GMThttp://m.tkk7.com/min-water/articles/336710.htmlhttp://m.tkk7.com/min-water/comments/336710.htmlhttp://m.tkk7.com/min-water/articles/336710.html#Feedback0http://m.tkk7.com/min-water/comments/commentRss/336710.htmlhttp://m.tkk7.com/min-water/services/trackbacks/336710.html现在银行遍地开花,在城市了差不多每?00c_可以看到一安行。在银行叫号排队也就成了很^常的事情。但是很让h生气的是在咱们这个世界上最大的C会M国家里,在银行排队却很不公^Q咱们这些没q人(在银行里存钱不多Q持普通卡Q每ơ排队都要等很长一D|间才能办理业务,而且没有工作人员来招|而那些有׃hQ在银行里存了很多钱Q持“金卡”Q却不用{,随时可以办理业务Q还其名曰“金卡”Ҏ(gu)。难道有钱就有特权吗Q气愤中……...

q是说这个系l吧Q?/p>

银行大厅里有一个叫hQ顾客客LQ,如果持普通卡点一下办理业务按钮就会打C张小条,昄你的L和排在你前面的h敎ͼ如果持金卡,点一下办理业务就会提CZ一位要办理的客户就是你?/p>

每个业务办理H口都有一个工作h员客LQ点M一位就会从{待的客户队列中取出W一位到该窗口办理?/p>

客户Q也是{待的hQ要有号码、排在前面的人数{属性,然后实现q些属性的set、getҎ(gu)?/p>

Waiter

Waiter

工作人员Q也是H口的处理业务的人员Q她们有自己的编P姓名Q顾客,实现q些属性的set、getҎ(gu)Q还加入了一D工作过E的代码?/p>

Counter

Counter

 

试一下:

TestBankQueue

l果Q?/p>

image

服务器端Q?/p>

QueueServer

BankWorkerUI

工作人员客户端:

BankWorkerUI

WaiterQueueUI

客户的客LQ?/p>

WaiterQueueUI

看一下运行结果:

image

image



Mineralwasser 2010-11-01 17:16 发表评论
]]>
一个简单的医院自助挂号pȝhttp://m.tkk7.com/min-water/articles/336700.htmlMineralwasserMineralwasserMon, 01 Nov 2010 08:33:00 GMThttp://m.tkk7.com/min-water/articles/336700.htmlhttp://m.tkk7.com/min-water/comments/336700.htmlhttp://m.tkk7.com/min-water/articles/336700.html#Feedback3http://m.tkk7.com/min-water/comments/commentRss/336700.htmlhttp://m.tkk7.com/min-water/services/trackbacks/336700.html先说一下在医院挂号的情况:(zhn)者到医院后要先交钱挂P然后在等候大厅等待叫P叫到你,你才能去看病。怎么挂号呢?医院有好多坐诊的ȝ或者专Ӟ挂号的时候?zhn)者可以选择让哪个医生或者专家ؓ自己看病Q选好以后Q等着你选的ȝ或者专家叫你就好了。这个挂Ll怎么做的呢,我们写一个JAVAE序模拟一下?/p>

首先Q这个系l会有?zhn)者类PatientQ医生类DoctorQ还有服务器cServerQ当然还有用L面UI?/p>

Patient

病hc,要有名字、号码,q要有挂Lȝ的标记号Q这些都要作为病人的属性,然后实现set、getҎ(gu)?/p>

Patient


Doctor

ȝc,要有姓名和编P~号用来供给病h来挂自己的号Q姓名就不用再说了。然后给q些属性实现set、getҎ(gu)?/p>

Doctor

 

QueueServer

挂号排队pȝ的服务器Q由q个服务器来实现对病人、医生的兌Q实现病人挂号和ȝ叫号的功能?/p>

具体Ҏ(gu)为:为每个医生创Z个?zhn)者队列,装蝲对应的挂h者。这些队列listQ要先进先出即firstinQfirstoutQ所以要用Queue。然后把q些队列初始化,׃是模拟的E序Q所以初始化时先分别加入几个病h?/p>

QueueServer

PatientUI

q是病h挂号pȝ的病人客L。要有一个TextQ几个ButtonQ对应相应的ȝQ,当然要有一个容器装载这些东ѝ?/p>

当?zhn)者点d生按钮挂号后Q?zhn)者会加入到医生对应的(zhn)者队列,Text内会昄所选择的医生或者专家、自qL和所排在位置Q如果前面排队的人太多还会有小的温馨提C呵Q?/p>

PatientUI

DoctorUI

q是ȝ的客LQ同栯有一个容器装载一个Text和一个Button。点击ButtonQ下一?.Q,׃在他的病人队列里取出排在最前面的那个?zhn)者,在Text内显C位前来就诊的(zhn)者的信息Q如果所有病人都看完了,׃昄没有病h了)?/p>

Q这只是一个医生的客户端,其他ȝ的客L的编写方法与之相同,q里׃一一写出来了..Q?/p>

DoctorUI

PatientUI

病h客户端的q行效果Q?/p>

image

DoctorUI

ȝ客户端的q行效果Q?/p>

image



Mineralwasser 2010-11-01 16:33 发表评论
]]>
选课http://m.tkk7.com/min-water/articles/336539.htmlMineralwasserMineralwasserFri, 29 Oct 2010 16:40:00 GMThttp://m.tkk7.com/min-water/articles/336539.htmlhttp://m.tkk7.com/min-water/comments/336539.htmlhttp://m.tkk7.com/min-water/articles/336539.html#Feedback0http://m.tkk7.com/min-water/comments/commentRss/336539.htmlhttp://m.tkk7.com/min-water/services/trackbacks/336539.html选课pȝ很有意思,学生选择一门课E以后,q门评׃d到这个学生的选课列表里面Q同时这名学生也dC选择q门评的学生列表里面,也就是学生和评是双向选择的?/p>

创徏评cCourseQ设|三个属性分别ؓ名称、学分、学生名单?/p>

Course

创徏学生cStudentQ设|三个属性姓名、年龄、选课列表?/div>
Student

创徏试cTestCourseQ在里面创徏五个学生三门评Qƈ对他们互盔R择Qƈ把每个学生选得评d到各自的选课列表Q把选择每门评的学生添加到各科的学生列表,然后q行遍历Q学生的评列表和课E的学生列表?/p>

TestCourse

l果昄Q只打印stu1和c1的列表)

image



Mineralwasser 2010-10-30 00:40 发表评论
]]>消息队列http://m.tkk7.com/min-water/articles/336537.htmlMineralwasserMineralwasserFri, 29 Oct 2010 16:23:00 GMThttp://m.tkk7.com/min-water/articles/336537.htmlhttp://m.tkk7.com/min-water/comments/336537.htmlhttp://m.tkk7.com/min-water/articles/336537.html#Feedback0http://m.tkk7.com/min-water/comments/commentRss/336537.htmlhttp://m.tkk7.com/min-water/services/trackbacks/336537.html先创Z个messagec,属性ؓ发送方、接收方、内宏V?/p>
Message

创徏QQInterface接口Q内部创建发送和接收消息的方法?/p>

QQInterface

创徏QQServer服务器,作ؓ消息的{q站?/p>

QQServer

QQ1Q实现QQInterface接口及方法,作ؓ发送方?/p>

QQ1

QQ2Q实现QQInterface接口及方法,作ؓ接收斏V?/p>

QQ2

创徏Test试c?/p>

Test

l果昄

image



Mineralwasser 2010-10-30 00:23 发表评论
]]>
վ֩ģ壺 ޾ƷƵ߹ۿ㶮| 1000žžδʮ| 㽶Ƶ | ޾Ʒ벻| ߹ۿ| ۺɫ¶| һɫëƬ| Ļ| þóѲ| аӰԺ߹ۿ| 114ëƬѹۿ| һ| ˬִ̼APP| | Ůڵվ| ۺ| Ʒ޲һ| òѸ| þ˽˹ƷvA| һƵ| ޹AVһ | 97Ƶ| ޾ƷƵ| žžžƷƵ| ۺ͵Ļ| ˳WWW| պ尡Ƶ߹ۿ | ɫվ| Ʒ޾߹ۿ| ҳ߹ۿ| պ˳վ| ŷ͵Ʒ | ѸӰ߹ۿ| Aɻ߹ۿ | ͵޹| ޳avƬһ | С˵ר޴ɫУ԰| þ޾ƷĻ| ߳Ƶ| һĻ| רĻ|