ï»??xml version="1.0" encoding="utf-8" standalone="yes"?>日本不卡中文字幕,精品乱子伦一区二区三区,久久美女艺术照精彩视频福利播放 http://www.aygfsteel.com/eric0326/java技术,软äšg工程åQŒå¼€æºç›¸å…?/description>zh-cn Sun, 13 Jul 2025 17:29:44 GMT Sun, 13 Jul 2025 17:29:44 GMT 60 Java IO 包ä¸çš„Decoratoræ¨¡å¼ http://www.aygfsteel.com/eric0326/archive/2006/01/10/27349.html¾U¢ç‹ ¾U¢ç‹ Tue, 10 Jan 2006 03:16:00 GMT http://www.aygfsteel.com/eric0326/archive/2006/01/10/27349.html http://www.aygfsteel.com/eric0326/comments/27349.html http://www.aygfsteel.com/eric0326/archive/2006/01/10/27349.html#Feedback 0 http://www.aygfsteel.com/eric0326/comments/commentRss/27349.html http://www.aygfsteel.com/eric0326/services/trackbacks/27349.html
Java IO 包ä¸çš„Decorator模å¼
JDK为程åºå‘˜æä¾›äº†å¤§é‡çš„¾cÕdº“åQŒè€ŒäØ“äº†ä¿æŒç±»åº“çš„å¯é‡ç”¨æ€§ï¼Œå¯æ‰©å±•性和ç‰|´»æ€§ï¼Œå…¶ä¸ä½¿ç”¨åˆîCº†å¤§é‡çš„设计模å¼ï¼Œæœ¬æ–‡ž®†ä»‹¾lJDKçš„I/O包ä¸ä½¿ç”¨åˆ°çš„Decorator模å¼åQŒåƈ˜qç”¨æ¤æ¨¡å¼ï¼Œå®žçŽ°ä¸€ä¸ªæ–°çš„è¾“å‡ºæµ¾c…R€?
  Decoratoræ¨¡å¼½Ž€ä»?
  Decorator模å¼åˆå包装å™?Wrapper)åQŒå®ƒçš„主è¦ç”¨é€”在于给一个对象动æ€çš„æ·ÕdŠ ä¸€äº›é¢å¤–çš„èŒè´£ã€‚与生æˆå类相比åQŒå®ƒæ›´å…·æœ‰çµ‹zÀL€§ã€?br>
�
时候,我们需è¦äØ“ä¸€ä¸ªå¯¹è±¡è€Œä¸æ˜¯æ•´ä¸ªç±»æ·ÕdŠ ä¸€äº›æ–°çš„åŠŸèƒ½ï¼Œæ¯”å¦‚åQŒç»™ä¸€ä¸ªæ–‡æœ¬åŒºæ·ÕdŠ ä¸€ä¸ªæ»šåŠ¨æ¡çš„功能。我们å¯ä»¥ä‹É用ç‘ô承机制æ¥å®žçް˜q™ä¸€åŠŸèƒ½åQŒä½†æ˜¯è¿™¿U方法ä¸
够絋z»ï¼Œæˆ‘ä»¬æ— æ³•æŽ§åˆ¶æ–‡æœ¬åŒºåŠ æ»šåŠ¨æ¡çš„æ–¹å¼å’Œæ—¶æœºã€‚è€Œä¸”å½“æ–‡æœ¬åŒºéœ€è¦æ·»åŠ æ›´å¤šçš„åŠŸèƒ½æ—Óž¼Œæ¯”如è¾ÒŽ¡†½{‰ï¼Œéœ€è¦åˆ›å»ºæ–°çš„ç±»åQŒè€Œå½“需è¦ç»„åˆä‹Éç”¨è¿™äº›åŠŸèƒ½æ—¶æ— ç–‘ž®†ä¼š
引è“v¾cÈš„爆炸ã€?br>
  我们å¯ä»¥ä½¿ç”¨ä¸€¿U更为絋zÈš„æ–ÒŽ³•åQŒå°±æ˜¯æŠŠæ–‡æœ¬åŒºåµŒå…¥åˆ°æ»šåЍæ¡ä¸ã€‚而这个滚动æ¡çš„ç±»ž®Þq›¸å½“于å¯ÒŽ–‡æœ¬åŒºçš„一个装饰。这个装
é¥?滚动æ?必须与被装饰的组ä»?文本åŒ?¾l§æ‰¿è‡ªåŒä¸€ä¸ªæŽ¥å£ï¼Œ˜q™æ ·åQŒç”¨æˆ·å°±ä¸å¿…å…›_¿ƒè£…饰的实玎ͼŒå› 䨓˜q™å¯¹ä»–们æ¥è¯´æ˜¯é€æ˜Žçš„。装é¥îC¼šž®†ç”¨æˆïLš„è¯äh±‚转呾l™ç›¸åº?
的组ä»?匙°ƒç”¨ç›¸å…³çš„æ–ÒŽ³•)åQŒåƈå¯èƒ½åœ¨è{å‘çš„å‰åŽåšä¸€äº›é¢å¤–的动作(å¦‚æ·»åŠ æ»šåŠ¨æ¡)。通过˜q™ç§æ–ÒŽ³•åQŒæˆ‘们å¯ä»¥æ ¹æ®ç»„åˆå¯¹æ–‡æœ¬åŒºåµŒå¥—ä¸åŒçš„装饰åQŒä»Žè€Œæ·»åŠ ä“Q
æ„多的功能。这¿U动æ€çš„å¯¹å¯¹è±¡æ·»åŠ åŠŸèƒ½çš„æ–ÒŽ³•ä¸ä¼šå¼•è“v¾cÈš„爆炸åQŒä¹Ÿå…ähœ‰äº†æ›´å¤šçš„ç‰|´»æ€§ã€?br>
  以上的方法就是Decorator模å¼åQŒå®ƒé€šè¿‡¾l™å¯¹è±¡æ·»åŠ è£…é¥°æ¥åЍæ€çš„æ·ÕdŠ æ–°çš„åŠŸèƒ½ã€‚å¦‚ä¸‹æ˜¯Decorator模å¼çš„UML图:
Component为组件和装饰的公å…Þqˆ¶¾c»ï¼Œå®ƒå®šä¹‰äº†å类必须实现的方法ã€?br>
  ConcreteComponent是一个具体的¾l„äšg¾c»ï¼Œå¯ä»¥é€šè¿‡¾l™å®ƒæ·ÕdŠ è£…é¥°æ¥å¢žåŠ æ–°çš„åŠŸèƒ½ã€?br>
  Decorator是所有装饰的公共父类åQŒå®ƒå®šä¹‰äº†æ‰€æœ‰è£…饰必™åÕd®žçŽ°çš„æ–ÒŽ³•åQŒåŒæ—Óž¼Œå®ƒè¿˜ä¿å˜äº†ä¸€ä¸ªå¯¹äºŽComponent的引用,以便ž®†ç”¨æˆïLš„è¯äh±‚转呾l™ComponentåQŒåƈå¯èƒ½åœ¨è{å‘请求å‰åŽæ‰§è¡Œä¸€äº›é™„åŠ çš„åŠ¨ä½œã€?br>
  ConcreteDecoratorAå’ŒConcreteDecoratorB是具体的装饰åQŒå¯ä»¥ä‹É用它们æ¥è£…饰具体的Componentã€?br>
  Java IO包ä¸çš„Decorator模å¼
  JDKæä¾›çš„java.io包ä¸ä½¿ç”¨äº†Decoratoræ¨¡å¼æ¥å®žçް坹å„ç§è¾“入输出‹¹çš„ž®è£…ã€‚ä»¥ä¸‹å°†ä»¥java.io.OutputStreamåŠå…¶åç±»ä¸ÞZ¾‹åQŒè®¨è®ÞZ¸€ä¸‹Decorator模å¼åœ¨IOä¸çš„使用ã€?br>
  首先æ¥çœ‹ä¸€ŒD는¨æ¥åˆ›å»ºIO‹¹çš„代ç åQ?br>
以下是代ç 片ŒDµï¼š
try {
 OutputStream out = new DataOutputStream(new FileOutputStream("test.txt"));
} catch (FileNotFoundException e) {
 e.printStackTrace();
}
 
 ˜q™æ®µä»£ç 对于使用˜q‡JAVA输入输出‹¹çš„人æ¥è¯´å†ç†Ÿæ‚‰ä¸è¿‡äº†ï¼Œæˆ‘们使用DataOutputStreamž®è£…了一个FileOutputStreamã€?
˜q™æ˜¯ä¸€ä¸ªå…¸åž‹çš„Decorator模å¼çš„ä‹É用,FileOutputStream相当于ComponentåQŒDataOutputStreamž®±æ˜¯ä¸€ä¸?
Decoratorã€‚å°†ä»£ç æ”ÒŽˆå¦‚下åQŒå°†ä¼šæ›´å®ÒŽ˜“ç†è§£åQ?br>
以下是代ç 片ŒDµï¼š
try {
 OutputStream out = new FileOutputStream("test.txt");
 out = new DataOutputStream(out);
} catch(FileNotFoundException e) {
 e.printStatckTrace();
}
  ç”׃ºŽFileOutputStreamå’ŒDataOutputStream有公å…Þqš„父类OutputStreamåQŒå› æ¤å¯¹å¯¹è±¡çš„装饰对于用æˆäh¥è¯´å‡ ä¹Žæ˜¯é€æ˜Žçš„。下é¢å°±æ¥çœ‹çœ‹OutputStreamåŠå…¶å类是如何构æˆDecorator模å¼çš„:
OutputStream是一个抽象类åQŒå®ƒæ˜¯æ‰€æœ‰è¾“出æµçš„å…¬å…Þqˆ¶¾c»ï¼Œå…¶æºä»£ç 如下åQ?
以下是代ç 片ŒDµï¼š
public abstract class OutputStream implements Closeable, Flushable {
public abstract void write(int b) throws IOException;
...
}
它定义了write(int b)的抽象方法。这相当于Decorator模å¼ä¸çš„Component¾c…R€?
ByteArrayOutputStreamåQŒFileOutputStream å’?PipedOutputStream 三个¾c»éƒ½ç›´æŽ¥ä»ŽOutputStream¾l§æ‰¿åQŒä»¥ByteArrayOutputStreamä¸ÞZ¾‹åQ?
以下是代ç 片ŒDµï¼š
public class ByteArrayOutputStream extends OutputStream {
protected byte buf[];
protected int count;
public ByteArrayOutputStream() {
this(32);
}
public ByteArrayOutputStream(int size) {
if (size �0) {
throw new IllegalArgumentException("Negative initial size: " + size);
}
buf = new byte[size];
}
public synchronized void write(int b) {
int newcount = count + 1;
if (newcount �buf.length) {
byte newbuf[] = new byte[Math.max(buf.length 〈�1, newcount)];
System.arraycopy(buf, 0, newbuf, 0, count);
buf = newbuf;
}
buf[count] = (byte)b;
count = newcount;
}
...
}
它实çŽîCº†OutputStreamä¸çš„write(int b)æ–ÒŽ³•åQŒå› æ¤æˆ‘们å¯ä»¥ç”¨æ¥åˆ›å»ø™¾“出æµçš„对象,òq¶å®Œæˆç‰¹å®šæ ¼å¼çš„输出。它相当于Decorator模å¼ä¸çš„ConcreteComponent¾c…R€?
æŽ¥ç€æ¥çœ‹ä¸€ä¸‹FilterOutputStreamåQŒä»£ç 如下:
以下是代ç 片ŒDµï¼š
public class FilterOutputStream extends OutputStream {
protected OutputStream out;
public FilterOutputStream(OutputStream out) {
this.out = out;
}
public void write(int b) throws IOException {
out.write(b);
}
...
}
å?
æ øP¼Œå®ƒä¹Ÿæ˜¯ä»ŽOutputStream¾l§æ‰¿ã€‚ä½†æ˜¯ï¼Œå®ƒçš„æž„é€ å‡½æ•°å¾ˆç‰¹åˆ«åQŒéœ€è¦ä¼ 递一个OutputStream的引用给它,òq¶ä¸”它将ä¿å˜å¯ÒŽ¤å¯¹è±¡çš„å¼•ç”¨ã€?
而如果没有具体的OutputStream对象å˜åœ¨åQŒæˆ‘ä»¬å°†æ— æ³•åˆ›å¾FilterOutputStream。由于outæ—¢å¯ä»¥æ˜¯æŒ‡å‘
FilterOutputStream¾cÕdž‹çš„引用,也å¯ä»¥æ˜¯æŒ‡å‘ByteArrayOutputStream½{‰å…·ä½“输出浾cÈš„引用åQŒå› æ¤ä‹É用多层嵌套的æ–?
å¼ï¼Œæˆ‘们å¯ä»¥ä¸ºByteArrayOutputStreamæ·ÕdŠ å¤šç§è£…饰。这个FilterOutputStream¾cÈ›¸å½“于Decorator模å¼ä¸çš„
Decorator¾c»ï¼Œå®ƒçš„write(int b)æ–ÒŽ³•åªæ˜¯½Ž€å•çš„è°ƒç”¨äº†ä¼ å…¥çš„‹¹çš„write(int
b)æ–ÒŽ³•åQŒè€Œæ²¡æœ‰åšæ›´å¤šçš„å¤„ç†ï¼Œå› æ¤å®ƒæœ¬è´¨ä¸Šæ²¡æœ‰å¯Ò޵˜q›è¡Œè£…饰åQŒæ‰€ä»¥ç‘ô承它的å¾cÕd¿…™å»è¦†ç›–æ¤æ–ÒŽ³•åQŒä»¥è¾‘Öˆ°è£…饰的目的ã€?
BufferedOutputStream
å’?
DataOutputStream是FilterOutputStream的两个å¾c»ï¼Œå®ƒä»¬ç›¸å½“于Decorator模å¼ä¸çš„
ConcreteDecoratoråQŒåÆˆå¯¹ä¼ å…¥çš„è¾“å‡º‹¹åšäº†ä¸åŒçš„装饰。以BufferedOutputStream¾cÖMؓ例:
以下是代ç 片ŒDµï¼š
public class BufferedOutputStream extends FilterOutputStream {
...
private void flushBuffer() throws IOException {
if (count �0) {
out.write(buf, 0, count);
count = 0;
}
}
public synchronized void write(int b) throws IOException {
if (count � buf.length) {
flushBuffer();
}
buf[count++] = (byte)b;
}
...
}
 
 ˜q™ä¸ª¾cÀLä¾›äº†ä¸€ä¸ªç¼“å˜æœºåˆÓž¼Œ½{‰åˆ°¾~“å˜çš„容é‡è¾¾åˆîC¸€å®šçš„å—节数时æ‰å†™å…¥è¾“出æµã€‚首先它¾l§æ‰¿äº†FilterOutputStreamåQŒåƈ且覆盖了父类çš?
write(int b)æ–ÒŽ³•åQŒåœ¨è°ƒç”¨è¾“出‹¹å†™å‡ºæ•°æ®å‰éƒ½ä¼š‹‚€æŸ¥ç¼“å˜æ˜¯å¦å·²æ»¡ï¼Œå¦‚果未满åQŒåˆ™ä¸å†™ã€‚è¿™æ ·å°±å®žçŽ°äº†å¯¹è¾“å‡º‹¹å¯¹è±¡åЍæ€çš„æ·ÕdŠ æ–°åŠŸèƒ½çš„ç›®çš„ã€?br>
  下é¢åQŒå°†ä½¿ç”¨Decorator模å¼åQŒäØ“IO写一个新的输出æµã€?br>
  自己写一个新的输出æµ
 
 了解了OutputStreamåŠå…¶å类的结构原ç†åŽåQŒæˆ‘们å¯ä»¥å†™ä¸€ä¸ªæ–°çš„输出æµåQŒæ¥æ·ÕdŠ æ–°çš„åŠŸèƒ½ã€‚è¿™éƒ¨åˆ†ä¸å°†¾l™å‡ºä¸€ä¸ªæ–°çš„输出æµçš„例å,它将˜q‡æ×o待输
凸™¯å¥ä¸çš„ç©ºæ ¼ç¬¦å—÷€‚比如需è¦è¾“å‡?java io
OutputStream"åQŒåˆ™˜q‡æ×oåŽçš„输出ä¸?javaioOutputStream"ã€‚ä»¥ä¸‹äØ“SkipSpaceOutputStream¾cÈš„代ç åQ?br>
以下是代ç 片ŒDµï¼š
import java.io.FilterOutputStream;
import java.io.IOException;
import java.io.OutputStream;
/**
* A new output stream, which will check the space character
* and won’t write it to the output stream.
* @author Magic
*
*/
public class SkipSpaceOutputStream extends FilterOutputStream {
 public SkipSpaceOutputStream(OutputStream out) {
  super(out);
 }
 /**
 * Rewrite the method in the parent class, and
 * skip the space character.
 */
 public void write(int b) throws IOException{
  if(b!=��{
   super.write(b);
  }
 }
}
  它从FilterOutputStream¾l§æ‰¿åQŒåƈ且é‡å†™äº†å®ƒçš„write(int b)æ–ÒŽ³•。在write(int b)æ–ÒŽ³•ä¸é¦–先对输入å—符˜q›è¡Œäº†æ£€æŸ¥ï¼Œå¦‚æžœä¸æ˜¯½Iºæ ¼åQŒåˆ™è¾“出ã€?br>
  以下是一个测试程åºï¼š
以下是代ç 片ŒDµï¼š
import java.io.BufferedInputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
/**
* Test the SkipSpaceOutputStream.
* @author Magic
*
*/
public class Test {
 public static void main(String[] args){
  byte[] buffer = new byte[1024];
  /**
  * Create input stream from the standard input.
  */
  InputStream in = new BufferedInputStream(new DataInputStream(System.in));
  /**
  * write to the standard output.
  */
  OutputStream out = new SkipSpaceOutputStream(new DataOutputStream(System.out));
  try {
   System.out.println("Please input your words: ");
   int n = in.read(buffer,0,buffer.length);
   for(int i=0;i〈n;i++){
    out.write(buffer[i]);
   }
  } catch (IOException e) {
   e.printStackTrace();
  }
 }
}
  执行以上‹¹‹è¯•½E‹åºåQŒå°†è¦æ±‚用户在console½H—å£ä¸è¾“入信æ¯ï¼Œ½E‹åºž®†è¿‡æ»¤æŽ‰ä¿¡æ¯ä¸çš„½Iºæ ¼åQŒåƈž®†æœ€åŽçš„¾l“果输出到console½H—å£ã€‚比如:
以下是引用片ŒDµï¼š
Please input your words:
a b c d e f
abcdef
  æ€?¾l?br>
 
 在java.io包ä¸åQŒä¸ä»…OutputStream用到了Decorator设计模å¼åQŒInputStreamåQŒReaderåQŒWriter½{‰éƒ½ç”¨åˆ°
äº†æ¤æ¨¡å¼ã€‚而作ä¸ÞZ¸€ä¸ªçµ‹zÈš„åQŒå¯æ‰©å±•的类库,JDKä¸ä‹É用了大é‡çš„设计模å¼ï¼Œæ¯”如在Swing包ä¸çš„MVC模å¼åQŒRMIä¸çš„Proxy模弽{‰ç‰ã€‚对äº?
JDK䏿¨¡å¼çš„ç ”ç©¶ä¸ä»…èƒ½åŠ æ·±å¯¹äºŽæ¨¡å¼çš„ç†è§£åQŒè€Œä¸”˜q˜æœ‰åˆ©äºŽæ›´é€å½»çš„了解类库的¾l“构和组æˆã€?br>
转自åQ?a target="_blank" >http://www.java-cn.com/technology/technology_detail.jsp?id=3976
]]>开始å°è®ºæ–‡ http://www.aygfsteel.com/eric0326/archive/2005/09/17/13247.html¾U¢ç‹ ¾U¢ç‹ Sat, 17 Sep 2005 12:38:00 GMT http://www.aygfsteel.com/eric0326/archive/2005/09/17/13247.html http://www.aygfsteel.com/eric0326/comments/13247.html http://www.aygfsteel.com/eric0326/archive/2005/09/17/13247.html#Feedback 0 http://www.aygfsteel.com/eric0326/comments/commentRss/13247.html http://www.aygfsteel.com/eric0326/services/trackbacks/13247.html 好久没有æ¥äº† ]]> 回到了西å®?/title><link>http://www.aygfsteel.com/eric0326/archive/2005/08/24/10942.html</link><dc:creator>¾U¢ç‹</dc:creator><author>¾U¢ç‹</author><pubDate>Wed, 24 Aug 2005 10:07:00 GMT</pubDate><guid>http://www.aygfsteel.com/eric0326/archive/2005/08/24/10942.html</guid><wfw:comment>http://www.aygfsteel.com/eric0326/comments/10942.html</wfw:comment><comments>http://www.aygfsteel.com/eric0326/archive/2005/08/24/10942.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/eric0326/comments/commentRss/10942.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/eric0326/services/trackbacks/10942.html</trackback:ping><description><![CDATA[<P>回æ¥çš„æ„Ÿè§‰çœŸå¥?/P><img src ="http://www.aygfsteel.com/eric0326/aggbug/10942.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/eric0326/" target="_blank">¾U¢ç‹</a> 2005-08-24 18:07 <a href="http://www.aygfsteel.com/eric0326/archive/2005/08/24/10942.html#Feedback" target="_blank" style="text-decoration:none;">å‘表评论</a></div>]]></description></item></channel></rss> <footer>
<div class="friendship-link">
<a href="http://www.aygfsteel.com/" title="狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频">狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频</a>
</div>
</footer>
Ö÷Õ¾Ö©Öë³ØÄ£°å£º
<a href="http://" target="_blank">Ó¢¼ªÉ³ÏØ</a>|
<a href="http://" target="_blank">ƽ¹ÈÇø</a>|
<a href="http://" target="_blank">¿ÂÆºÏØ</a>|
<a href="http://" target="_blank">ÊÙÑôÏØ</a>|
<a href="http://" target="_blank">ÄÂÀâÊÐ</a>|
<a href="http://" target="_blank">̨ÄÏÊÐ</a>|
<a href="http://" target="_blank">Ì¨Ç°ÏØ</a>|
<a href="http://" target="_blank">¾°Äþ</a>|
<a href="http://" target="_blank">¸§ÖÝÊÐ</a>|
<a href="http://" target="_blank">èï´¨ÏØ</a>|
<a href="http://" target="_blank">Äϵ¤ÏØ</a>|
<a href="http://" target="_blank">³µéÏØ</a>|
<a href="http://" target="_blank">ÎÂÖÝÊÐ</a>|
<a href="http://" target="_blank">ÓÀ¶¨ÏØ</a>|
<a href="http://" target="_blank">ÉÇÍ·ÊÐ</a>|
<a href="http://" target="_blank">´óÀíÊÐ</a>|
<a href="http://" target="_blank">ÓñϪÊÐ</a>|
<a href="http://" target="_blank">¸»Ë³ÏØ</a>|
<a href="http://" target="_blank">ÖÐÄþÏØ</a>|
<a href="http://" target="_blank">ÇìÑôÊÐ</a>|
<a href="http://" target="_blank">³¤´ºÊÐ</a>|
<a href="http://" target="_blank">¶«¸ÛÊÐ</a>|
<a href="http://" target="_blank">¸ÊµÂÏØ</a>|
<a href="http://" target="_blank">×ÛÒÕ</a>|
<a href="http://" target="_blank">»ù¡ÊÐ</a>|
<a href="http://" target="_blank">ÀóÆÖÏØ</a>|
<a href="http://" target="_blank">¸§ÖÝÊÐ</a>|
<a href="http://" target="_blank">ÆÁ¶«ÏØ</a>|
<a href="http://" target="_blank">Ôö³ÇÊÐ</a>|
<a href="http://" target="_blank">ÒÀÀ¼ÏØ</a>|
<a href="http://" target="_blank">Ïã¸ñÀïÀÏØ</a>|
<a href="http://" target="_blank">°¢ÀÉÆ×óÆì</a>|
<a href="http://" target="_blank">Òí³ÇÏØ</a>|
<a href="http://" target="_blank">Ïå³ÇÏØ</a>|
<a href="http://" target="_blank">¾¸Ô¶ÏØ</a>|
<a href="http://" target="_blank">Î÷Ï¿ÏØ</a>|
<a href="http://" target="_blank">äųØÏØ</a>|
<a href="http://" target="_blank">ÑǶ«ÏØ</a>|
<a href="http://" target="_blank">½´¨ÏØ</a>|
<a href="http://" target="_blank">´ëÇÚÏØ</a>|
<a href="http://" target="_blank">ºìÔÏØ</a>|
<script>
(function(){
var bp = document.createElement('script');
var curProtocol = window.location.protocol.split(':')[0];
if (curProtocol === 'https') {
bp.src = 'https://zz.bdstatic.com/linksubmit/push.js';
}
else {
bp.src = 'http://push.zhanzhang.baidu.com/push.js';
}
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(bp, s);
})();
</script>
</body>