/*
³ÌÐò¹¦ÄÜ£º½«ecoli(1).txt·Ö¸î£¬ÆäÖзָîµÄ·Ö¸î·ûÊÇ>
·Ö¸îµÄÎļþÃûÊÇ>gi|????|,"???"±íʾһ¶ÎÊý×Ö£¬ÓÃÊý×Ö×ö×ÓÎļþÃû
ÎļþÒÔ×Ö·û"!"½áβ
³ÌÐòÔ±:xianglinyan
*/
import java.io.*;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.DataOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.util.*;
public class Class1
{
public Class1()
{
}
public static void main(String[] args)
{
String f_name="";
try{
BufferedReader in= new BufferedReader(new FileReader("E:\\ecoli(1).txt"));//ÎļþÊäÈëÁ÷Ϊ
String cc=in.readLine();
char ch=cc.charAt(0);
char eh=cc.charAt(cc.length()-1);
while(eh!='!')
{
if(ch=='>')
{
f_name=cc.substring(4,11);
}
......
ͨ³££¬¿Í»§Àà(clients of class)ͨ¹ýÀàµÄ½Ó¿Ú·ÃÎÊËüÌṩµÄ·þÎñ¡£ÓÐʱ£¬ÏÖÓеÄÀà(existing class)¿ÉÒÔÌṩ¿Í»§ÀàµÄ¹¦ÄÜÐèÒª£¬µ«ÊÇËüËùÌṩµÄ½Ó¿Ú²»Ò»¶¨Êǿͻ§ÀàËùÆÚÍûµÄ¡£ÕâÊÇÓÉÓÚÏÖÓеĽӿÚÌ«Ïêϸ»òÕßȱ·¦Ïêϸ»ò½Ó¿ÚµÄÃû³ÆÓë¿Í»§ÀàËù²éÕҵIJ»Í¬µÈÖî¶à²»Í¬ÔÒòµ¼Öµġ£
¡¡¡¡ÔÚÕâÖÖÇé¿öÏ£¬ÏÖÓеĽӿÚÐèҪת»¯(convert)Ϊ¿Í»§ÀàÆÚÍûµÄ½Ó¿Ú£¬ÕâÑù±£Ö¤Á˶ÔÏÖÓÐÀàµÄÖØÓá£Èç¹û²»½øÐÐÕâÑùµÄת»¯£¬¿Í»§Àà¾Í²»ÄÜÀûÓÃÏÖÓÐÀàËùÌṩµÄ¹¦ÄÜ¡£ÊÊÅäÆ÷ģʽ(Adapter Pattern)¿ÉÒÔÍê³ÉÕâÑùµÄת»¯¡£ÊÊÅäÆ÷ģʽ½¨Ò鶨ÒåÒ»¸ö°ü×°À࣬°ü×°Óв»¼æÈݽӿڵĶÔÏó¡£Õâ¸ö°ü×°ÀàÖ¸µÄ¾ÍÊÇÊÊÅäÆ÷(Adapter)£¬Ëü°ü×°µÄ¶ÔÏó¾ÍÊÇÊÊÅäÕß(Adaptee)¡£ÊÊÅäÆ÷Ìṩ¿Í»§ÀàÐèÒªµÄ½Ó¿Ú£¬ÊÊÅäÆ÷½Ó¿ÚµÄʵÏÖÊǰѿͻ§ÀàµÄÇëÇóת»¯Îª¶ÔÊÊÅäÕßµÄÏàÓ¦½Ó¿ÚµÄµ÷Ó᣻»¾ä»°Ëµ£ºµ±¿Í»§Ààµ÷ÓÃÊÊÅäÆ÷µÄ·½·¨Ê±£¬ÔÚÊÊÅäÆ÷ÀàµÄÄÚ²¿µ÷ÓÃÊÊÅäÕßÀàµÄ·½·¨£¬Õâ¸ö¹ý³Ì¶Ô¿Í»§ÀàÊÇ͸Ã÷µÄ£¬¿Í»§Àಢ²»Ö±½Ó·ÃÎÊÊÊÅäÕßÀà¡£Òò´Ë£¬ÊÊÅäÆ÷¿ÉÒÔʹÓÉÓÚ½è¿Ú²»¼æÈݶø²»Äܽ»»¥µÄÀà¿ÉÒÔÒ»Æð¹¤×÷(work together)¡£
¡¡¡¡ÔÚÉÏÃæÌÖÂ۵Ľӿڣº
¡¡¡¡(1) ²»ÊÇÖ¸ÔÚJAVA±à³ÌÓïÑÔÖнӿڵĸÅÄËäÈ»ÀàµÄ½Ó¿Ú¿ÉÒÔͨ¹ýJAVA½èÀ©À´¶¨Òå¡£
¡¡¡¡(2) ²»ÊÇÖ¸ÓÉ´°ÌåºÍGUI¿Ø¼þ ......
×÷Ϊһ¸öJava³ÌÐòÔ±£¬ÎÒÃdz£³£»áÆÄ¸Ð×ÔºÀµØËµ£º½ðÈÚÐÐÒµµÄ´óϵͳһ°ã¶¼ÊÇÓÃJavaдµÄ¡£ÓÐÌ«¶àÀíÓÉÈÃÎÒÃÇÏàÐÅ£¬JavaÔÚÆóÒµ¼¶Ó¦ÓÃÕâ¿é£¬ÆðמÙ×ãÇáÖØµÄ×÷Óá£È»¶ø£¬ÊÂʵ¹ûÕæÈç´ËÂ𣿽ðÈÚÐÐÒµ»òÐíÊÇÄÇÑù£¬¿ÉÊÇÏñGoogle¡¢AmazonÕâÑùµÄ´óÐÍÍøÕ¾ÄØ£¿Ãæ¶ÔÕâÑùµÄÒÉÎÊ£¬ÔÚ·Ö²¼Ê½Ó¦Óá¢CORBA¡¢JINI¡¢J2EE¡¢Íø¸ñºÍSOAÁìÓò£¬ÓÐ×Å10¶àÄê¾ÑéµÄNati Shalom£¬¸ù¾ÝÊÂʵ£¬µÃ³öÁË“´ó¶àÊý´óÐÍÍøÕ¾²»ÊÇÓÃJavaдµÄ”½áÂÛ£¬²¢ÇÒ·ÖÎöÁËÐγɵÄÔÒò¡£ÔÎÄÒ»¾·¢±í£¬±ãÒýÆðÁ˼«´óµÄ¹Ø×¢¡£±ÊÕßÏ£Íû±¾ÎÄ¿ÉÒÔ¶Ô¿ª·¢ÕßÈçºÎÑ¡ÔñÊʺÏ×Ô¼ºµÄ¼Ü¹¹£¬Æðµ½Ò»¶¨µÄ½è¼ø×÷Óᣠ[size=2][/size] ÔÚ¹ýÈ¥µÄ¼¸ÖÜÀÎÒºÍÎÒµÄͬÊÂGeva Perry¾Í“Ϊʲô´ó¶àÊý´óÐÍÍøÕ¾²»ÊÇÓÃJavaдµÄ”ÕâÒ»ÎÊÌâ½øÐÐÁËÌÖÂÛ¡£ÔÚblogosphereÉÏ£¬ÓдóÁ¿ÐÅÏ¢ÓÃÓÚÃèÊöGoogle¡¢Amazon¡¢eBay¡¢LinkedIn¡¢TypePad¡¢WikiPediaÖ®ÀàÊÜ»¶ÓµÄÍøÕ¾µÄ¼Ü¹¹¡£ PingdomÉϵÄÈËÃÇÊÕ¼¯ÁËһЩÕâÑùµÄÐÅÏ¢£¬ÕâЩÐÅÏ¢»ùÓÚHigh-ScalabilityÉϵÄһЩ×ÊÁÏ£º [size=2][img=580,117]http://image.it168.com/cms/2007-10-26/Image/2007102695316.jpg[/img] [/size][b]ͼ1[/b] ÔÚ¿´ÕâЩ¼Ü¹¹µÄ¹ý³ÌÖУ¬Ò»Ð©·¢ÏÖ£¬½øÈëÄÔº££º´ó¶àÊýÕâЩվµãʹÓÃLAMP£¨ÒëÕß×¢£ ......
Ŀ¼
ÕªÒª ……………………………………………………………………2
ÎÄÏ××ÛÊö ………………………………………………………………3
µÚÒ»Õ ǰÑÔ……………………………………………………………6
µÚ¶þÕ OOPµÄ»ù±¾ÔÔò¼°·¢Õ¹·½Ïò
µÚÒ»½Ú Èí¼þµÄ¿Éά»¤ÐÔÓë¿É¸´ÓÃÐÔ…………………………6
µÚ¶þ½Ú ÁùÌõOOPÉè¼ÆÔÔò ……………………………………7
µÚÈý½Ú AOPµÄÐËÆð………………………& ......
´úÀíģʽµÄ×÷ÓÃÊÇ£ºÎªÆäËû¶ÔÏóÌṩһÖÖ´úÀíÒÔ¿ØÖƶÔÕâ¸ö¶ÔÏóµÄ·ÃÎÊ¡£
ÔÚijЩÇé¿öÏ£¬Ò»¸ö¿Í»§²»Ïë»òÕß²»ÄÜÖ±½ÓÒýÓÃÁíÒ»¸ö¶ÔÏ󣬶ø´úÀí¶ÔÏó¿ÉÒÔÔÚ¿Í»§¶ËºÍÄ¿±ê¶ÔÏóÖ®¼äÆðµ½ÖнéµÄ×÷ÓÃ
ÀýÈ磺¿ÍÈËÏëÇëÊг¤(ÕæÊǽÇÉ«)³Ô·¹ µ«ÊÇÇë²»¶¯Êг¤ Ö»ºÃÕÒÊг¤ÃØÊé(´úÀí½ÇÉ«) µ«ÊÇ×îºóΪ¿ÍÈË×öÊ嵀 »¹ÊÇÊг¤
´úÀíģʽһ°ãÉæ¼°µ½µÄ½ÇÉ«ÓÐ
³éÏó½ÇÉ«£ºÉùÃ÷ÕæÊµ¶ÔÏóºÍ´úÀí¶ÔÏóµÄ¹²Í¬½Ó¿Ú
´úÀí½ÇÉ«£º´úÀí¶ÔÏó½ÇÉ«ÄÚ²¿º¬ÓжÔÕæÊµ¶ÔÏóµÄÒýÓ㬴Ӷø¿ÉÒÔ²Ù×÷ÕæÊµ¶ÔÏó£¬Í¬Ê±´úÀí¶ÔÏóÌṩÓëÕæÊµ¶ÔÏóÏàͬµÄ½Ó¿ÚÒÔ±ãÔÚÈκÎʱ¿Ì
¶¼ÄÜ´úÌæÕæÊµ¶ÔÏó¡£Í¬Ê±£¬´úÀí¶ÔÏó¿ÉÒÔÔÚÖ´ÐÐÕæÊµ¶ÔÏó²Ù×÷ʱ£¬¸½¼ÓÆäËûµÄ²Ù×÷£¬Ï൱ÓÚ¶ÔÕæÊµ¶ÔÏó½øÐзâ×°
ÕæÊµ½ÇÉ«£º´úÀí½ÇÉ«Ëù´ú±íµÄÕæÊµ¶ÔÏó£¬ÊÇÎÒÃÇ×îÖÕÒªÒýÓõĶÔÏó
²Î¼û³ÌÐòSubject.java
²Î¼û³ÌÐòRealSubject.java
²Î¼û³ÌÐòProxySubject.java
²Î¼û³ÌÐòClient.java
// ³éÏó½ÇÉ«
abstract public class Subject
{
abstract public void request();
}
//ÕæÊµ½ÇÉ«£ºÊµÏÖÁËSubjectµÄrequest()·½·¨
public cl ......
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
/*
TRTRIS GAME
WRITE BY DELFAN
EMAIL : webmaster@delfan.com
URL : http://www.delfan.com
¾µä"¶íÂÞ˹·½¿é"ÓÎÏ·
×÷Õß : DELFAN
EMail : webmaster@delfan.com
Ö÷Ò³ : http://www.delfan.com
°æ±¾ÐÅÏ¢:
2002.01.13 »ù±¾Íê³É
ÇëÈκÎʱºò¶¼±£ÁôÒÔÉÏÐÅÏ¢.лл!
*/
public class tetris extends Applet implements Runnable
{
Thread thread;
private Image offImg; // »º³åͼÏó
private Graphics offG; // »º³å
final int BaseX = 20;
final int BaseY = 20;
final int BlockSize = 20; // ÿ¸ö¿éµÄ´óС
//
// ¶¨ÒåÓÎÏ·ÖгöÏÖµÄÐÅÏ¢
//
final String INFO_READY = "S¼ü ¿ªÊ¼ÓÎÏ·";
final String INFO_PAUSE = "P¼ü ¼ÌÐøÓÎÏ·";
final String INFO_GAMEOVER = "ÓÎÏ·½áÊø ÈÎÒâ¼ü¼ÌÐø";
byte SHAPE[][][][] = // [ÔìÐÍË÷Òý][ÐýתË÷Òý][4][×ø±ê]
{
{ // ÔìÐÍÒ»
{{ 0, 0},{ 1, 0},{ 0, 1},{ 1, 1}}, // Ðýתһ [][]....
{{ 0, 0},{ 1, 0},{ 0, 1},{ 1, 1}}, // Ðýת¶þ [][]....
{{ 0, 0},{ 1, 0},{ 0, 1},{ 1, 1}}, // ÐýתÈý .... ......