javaµ¥ÀýÀà¼Ì³ÐÎÊÌâ ʹÓõǼÇʽµ¥ÀýµÄ·¢ÏÖ
ÓÉÓÚ³£¼ûµÄµ¥Àýģʽ,¶öººÊ½µ¥ÀýºÍÀÁººÊ½µ¥Àý,¹¹Ôì·½·¨¶¼Ë½ÓÐÁË,Òò´Ë²»Äܱ»¼Ì³Ð.
×î½üÔÚ¿ª·¢ÖÐÓöµ½ÎÊÌâÁË,Ç¡ºÃÐèÒª¼Ì³Ðµ¥ÀýÀà.ÕÒ×ÊÁϲÅÕÒµ½ÁËÕâ¸ö½â¾ö°ì·¨---µÇ¼Çʽµ¥Àý.
µÇ¼Çʽµ¥ÀýÀàÊÇΪÁ˿˷þ¶öººÊ½µ¥ÀýÀ༰ÀÁººÊ½µ¥ÀýÀà¾ù²»¿É¼Ì³ÐµÄȱµã¶øÉè¼ÆµÄ¡£µ±µ¥ÀýÀàÐèÒª±»¼Ì³ÐʱÊÊÓÃ.
´úÂëÇåµ¥3£ºµÇ¼Çʽµ¥ÀýÀà
import java.util.HashMap;
public class RegSingleton
{
static private HashMap m_registry = new HashMap();
private List<Player> plsyers=new linkedList<Player>();
static
{
RegSingleton x = new RegSingleton();
m_registry.put( x.getClass().getName() £¬ x);
}
/**
* ±£»¤µÄĬÈϹ¹Ôì×Ó
*/
protected RegSingleton() {}
/**
* ¾²Ì¬¹¤³§·½·¨£¬·µ»¹´ËÀàΩһµÄʵÀý
*/
static public RegSingleton getInstance(String name)
{
if (name == null)
{
name = "com.javapatterns.singleton.demos.RegSingleton";
}
if (m_registry.get(name) == null)
{
try
{
m_registry.put( name£¬
Class.forName(name).newInstance() ) ;
}
catch(Exception e)
{
System.out.println("Error happened.");
}
}
return (RegSingleton) (m_registry.get(name) );
}
public void remove(Player player){
players.remove(Player);
}
public List<Player> getPlayers(){
return players;
}
}
ËüµÄ×ÓÀàRegSingletonChild ÐèÒª¸¸ÀàµÄ°ïÖú²ÅÄÜʵÀý»¯¡£ÏÂͼËùʾÊǵǼÇʽµ¥ÀýÀà×ÓÀàµÄÒ»¸öÀý×Ó¡£Í¼ÖеĹØÏµ±íÃ÷£¬´ËÀàÊÇÓɸ¸Àཫ×ÓÀàʵÀý»¯µÄ¡£
ÏÂÃæÊÇ×ÓÀàµÄÔ´´úÂë¡£
´úÂëÇåµ¥4£ºµÇ¼Çʽµ¥ÀýÀàµÄ×ÓÀà
import java.util.HashMap;
public class RegSingletonChild extends RegSingleton
{
public RegSingletonChild() {}
/**
* ¾²Ì¬¹¤³§·½·¨
*/
static public RegSingletonChild getInstance()
{
return (RegSingletonChild)
RegSingleton.getInstance(
"com.javapatterns.singleton.demos.RegSingletonChild" );
}
public void test(){
int a= getPlayers().size();
int b =RegSingleton .getInstance().getPlayers().size();
}
}
ÔÚGoF ÔʼµÄÀý×ÓÖУ¬²¢Ã»ÓÐgetInstance() ·½·¨£¬ÕâÑùµÃµ½×ÓÀà±ØÐëµ÷ÓõÄgetInstance(String name)·½·¨
Ïà¹ØÎĵµ£º
(±¾ÎÄ×ªÔØ×Ô£ºhttp://hi.baidu.com/edilyxin/blog/item/27dc152aba3e10315343c19c.html)
ÎÊÌâµÄÌá³ö£º
±àÒëÔËÐÐÏÂÃæÕâ¸ö³ÌÐò»á¿´µ½Ê²Ã´£¿
public class Test{
public static  ......
ÀûÓÃJNI¼¼Êõ£¬¿ÉÒÔ×öµ½C/C++ÓëJavaÖ®¼äµÄÏ໥µ÷Óá£
1¡¢Javaµ÷ÓÃC/C++½Ó¿Ú
Õâ¸öÊÇJNI×î»ù±¾µÄÓ¦Óã¬JNIÓкܶàÕâ·½ÃæµÄÀý×Ó´úÂë¡£Ò»°ã°ÑC/C++д³É¶¯Ì¬Á´½Ó¿â£»ÔÚJava³ÌÐòÔÚLoadLibrary£¬ÀûÓÃnative½Ó¿Ú£¬¼´¿ÉÍê³Éµ÷Óá£
2¡¢C/C++»Øµ÷Java½Ó¿Ú
ÕâÖÖÓ÷¨£¬JNIµÄÀý×ӱȽÏÉÙ¡£Æäʵ£¬Ò²±È½Ï¼òµ¥£¬JNIÒ²ÌṩÁËÕâÑùµÄ½Ó¿Ú¡ ......
À´×Ô:http://www.cnblogs.com/shiyangxt/archive/2008/07/30/1256813.html
»·¾³£ºMyEclipse
Êý¾Ý¿â£ºmysql
Ê×ÏÈн¨JavaÏîÄ¿£¬È»ºóн¨Á½¸öÀ࣬һ¸öÊý¾Ý¿âÁ¬½Ó³ØÀ࣬һ¸ö²âÊÔÀà¡£
·Ö±ðÃüÃûConnectionPool£¬ConnectionPoolTest¡£
È»ºóн¨Ò»¸öÅäÖÃÎļþ£¬ÃüÃû£ºdbpool.properties¡£
&n ......
Ò»¡¢²»±äģʽ£º
Ò»¸ö×Ö·û´®¶ÔÏó´´½¨ºóËüµÄÖµ²»Äܸı䡣
String str1="hello";//´´½¨Ò»¸ö¶ÔÏóhello£¬²»»á±ä£»
System.out.println(str1);
str1+=" world!";//Á½¸ö×Ö·û´®¶ÔÏóÕ³Õ³£¬ÏµÍ³Æäʵ´´½¨ÁËÒ»¸öеĶÔÏ󣬰ÑStr1µÄÖ¸Ïò¸ÄÁË£¬Ö¸ÏòеĶÔÏó£»hello¾Í & ......
JAVA_HOME:
C:\Java\jdk1.6.0_17
Path:
%JAVA_HOME%\bin
ClassPath:
.;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar
ÎÒÃÇÐèÒªÉèÖÃÈý¸ö»·¾³±äÁ¿£ºJAVA_HOME¡¢PATH ºÍ CLASSPATH¡£
JAVA_HOME£º¸Ã»·¾³±äÁ¿µÄÖµ¾ÍÊÇ Java ËùÔÚµÄĿ¼£¬Ò»Ð© Java °æµÄÈí¼þºÍÒ»
Щ Java µÄ¹¤¾ßÐèÒªÓõ½¸Ã±äÁ¿£¬ÉèÖà PATH ºÍ CLASSP ......