�ʤ��������ܤμ�����ܤ��ɽ������äƤ����Ρ��פȤ�����Ŧ�⤢�ä������֥����˽񤤤��ΤϤ����ޤǤ������ܤΰ����������ˡ��Ƥ��������򸫤�����ʤɤ�����˳�ȯ���Ƥ���Τ��Ϥ��������狼��Τǡ��ä�����ʤ���
- for (int i = 0; i < list.getLength(); i++) {}������Ū�ѥե����ޥ󥹥ܥȥ�ͥå�
list.getLength()��list.getLength()��ɾ������Ƥ��ޤ���������Ȥ��Ƥϡ�JRE��ɸ�����°����DOM�Υ饤�֥���NodeList�μ�����list.getLength()������˽Ť������򤷤Ƥ��뤿�ᡢ���줬�����Ƿ�Ū�˥ѥե����ޥ󥹤��������뤳�Ȥ����롣
(�ޤ���getLength()�פǽŤ���������ʤ衢�Ȥ����ä⤢��ޤ���)�����������򤹤뤿��Υ��ǥ�����Ȥ��Ƥϡ�
for (int i = 0, length = list.getLength(); i < length; i++) {}
�Ȥ��ä���Τ����ꡢIBM developerWorks�ʤɥץ�����ޡ������Υ�ǥ����Ǥϡ����ν��������줷�Ƥ����Τ⤢�롣 - �����Ϥ�/���Ϥ��ط��μ��䡢switch fall through�ʤ�
����Ϥ��ΤޤޤʤΤǥѥ���
- �����������ܤ��ΤޤޤʤΤǥѥ���
- Singleton�ѥ�����ȥ��֥����������������ȡ�Singleton�ѥ�����Υޥ������å��б�
Singleton�ν����Ȥ��Ƥϡ��ޤ������Τ褦�ʤ�Τ��ͤ����롣
�ѥ�����1. �ե�����ɤν�������˥��󥹥�������
�ѥ�����2. �ٱ��������Ѥ���ɬ�פˤʤä��Ȥ��˥��󥹥�������public class Singleton { private static final Singleton self = new Singleton(); private Singleton() {} public static Singleton getInstance() { return self; } }
�̾�ϥѥ�����1.���ɤ��Ȥ��ơ����󥹥������������Ȥ��ç¤ï¿½ï¿½ï¿½ï¿½ï¿½Ö¥ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½È¤ò°·¤ï¿½ï¿½ï¿½ï¿½Ë¤Ï¥Ñ¥ï¿½ï¿½ï¿½ï¿½ï¿½2.�Τ褦���ٱ������κ��Ѥ��ͤ����뤬���ѥ�����2.�η��ˤ��Ƥ��ޤ��ȥޥ������å��б���ɬ�פʾ��˥������å�����Ʊ��������ɬ�פ�����(������Ǹ�����synchronized�βս�)���������å��������ˤ˸ƤӽФ����褦�ʥ������ǤϤ���Ʊ�����Υ����Ȥò²¿¤È¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Ç¤ï¿½ï¿½Í¡ï¿½ï¿½ï¿½ï¿½Æ¤É¤ï¿½ï¿½ï¿½ï¿½Þ¤ï¿½ï¿½ç¤¦ï¿½ï¿½ï¿½È¤ï¿½ï¿½ï¿½ï¿½Ã¡ï¿½public class Singleton { private static Singleton self; private Singleton() {} public static synchronized Singleton getInstance() { if (self == null) { self = new Singleton(); } return self; } }
���ʤߤˡ�Java���ò������äȤ��Ƥϡ������Τ褦�˥���ǥޥ�ɽ�����ۥ�������饹���ǥ�����(Effective Java ������ p.273)��Ȥ��ȡ��ٱ������β��ä�����Ĥġ��ʤ�����Ʊ�����Υ����Ȥ򤫤����˺Ѥ।�ǥ�����⤢�롣
�ѥ�����3. ����ǥޥ�ɽ�����ۥ�������饹���ǥ�����
public class Singleton { private static class Holder { static final Singleton self = new Singleton(); } private Singleton() {} public static Singleton getInstance() { return Holder.self; } }
- Observer�ѥ�����ǥ��٥��ȯ�н�������פ���ͳ
�����٥��ȯ�н�������Τ��İ�������Observer�ѥ������ȤäƤ��ޤ��ȡ���Ĥ�Subject��ʣ����Observer���Ĥ��Ƥ��ꡢ���İ�����Observer���⤦������Observer���ͤ򻲾Ȥ��Ƥ���褦�ʾ��˥ǡ����������礬����������������뤫�� etc.
- Mediator�ѥ�����ǥ᥽�åɤ�¿���ʤꤹ���Ƥ����Ȥ��ι���
����ǽ�ΤޤȤޤꤴ�Ȥ˥��󥿡��ե��������Ѱդ���Mediator�Ϥ����Υ��󥿡��ե��������������Mediator���ѼԤˤϥ��󥿡��ե������Ϥ�����
��Role Object�ѥ��������ڤ��ؤ���
��etc.
- Visitor�ѥ������Ȥ��٤����ȡ��Ƶ�Ū�롼�פ��н褹����ȤλȤ�ʬ��
ñ��Composite���Υ��֥������Ȥ�Ƶ�Ū�˽��������������ʤ���ߤ�Visitor�ѥ������Ȥ���ñ�˥���ץ뤵������������ˤʤäƤ��ޤ����Ȥ�����Τ������դǤ���͡����Ȥ������ξ��Ǥ��͡��ʤȤ����������Ѥ����褦�ʥ��饹�ˤĤ��Ƥϰ��Visitor�θ����Ѱդ��Ƥ���ȿ��ڤ��߷פˤʤ���⤢��ޤ���͡����Ȥ��������դ���á� - Composite�ѥ����󤬻��Ȥ��ơ֥��֥������Ȼظ�Ū�˵����������פʤ���ͳ
���Ƥ��ƴ��Ʊ��뤹�뤿��ˡ���������ˤ����ޤޤ�ʤ����󥿡��ե�������⤦�����˻������륱���������뤫�顣�㤨��������ƴ�ˤ����ޤޤ�ʤ������Ǽ����ϤΥ᥽�åɤ����Ƥ�¦�ˤ�������Ȥ��ƴޤޤ�륱�����Ȥ���
- static/final��List/Set/Map�ΰ㤤
���ΤޤޤʤΤǥѥ��� - new Boolean(true)��new Integer(5)�ʤɤ��侩����ʤ���ͳ
�Ȥ��󤷤�����Immutable�ʥ��֥������Ȥ�ʣ����������̵�̤˥ҡ��פ�����Τ�˾�ޤ����ʤ����顣�����Boolean.valueOf(true)��Integer.valueOf(5)�ʤɤ�Ȥ��� - �ɸ�Ū���ԡ�����
�ɸ�Ū���ԡ� = �ե�����ɤȤ��ƻ��äƤ��륪�֥������Ȥ������Ϥ��Ȥ���ʣ����Ĥ��ä��Ϥ��������ɸ�Ū���ԡ���ɬ�פʥ�������񤤤Ƥߤơ�����Ū����Ȥ����ɸ�Ū���ԡ����Ԥ��Ƥ��ʤ��Ǥ��͡����Ȥ��� - Java�ǤΥǥ����ץ��ԡ��μ�����ˡ�Ȥ��ƤɤΤ褦�ʤ�Τ��ͤ����ޤ���
�����̤�clone()�����
��ľ�󲽤�����
��etc.
- �С������ΰۤʤ�Ʊ��FQN�Υ��饹�����Ѥ��뤿����б���ˡ
��VM��櫓�Ʋ��餫�η����̿�(RMI etc.)
�����饹���������򼫺�
��etc.
���ʤߤ˥��饹���������κ�����ˤĤ��Ƥϰ���Java Programming Tips�˽񤤤������򻲾ȤΤ��ȡ�
�ԥ����󥨥ǥ奱�������
���夲��ó¥¥ï¿½: 3085



������
�����Ȱ��� (4)
��̤ϰ�������Boolean b = Boolean.TRUE��Boolean b = true;
����������
�����ˤ��׵ᤵ����ͤò¥¥ï¿½Ã¥ï¿½ï¿½å¤¹ï¿½ï¿½×¤È¤ï¿½ï¿½Ã¤ï¿½ï¿½Î¤ï¿½
����äȵ��ˤʤä�JDK1.6�μ�����Ĵ�٤��顢
valueOf(int i)��-128��128���ͤ�������å��夵��Ƥʤ��ݤ���
����å���Ȥ��äƤ�-128��128���ͤ���Integer���֥������Ȥ�valueOf(int i)���ƤӽФ�����
�쵤�˺���������ʳ������new Interg(int i)��ƤӽФ��Ƥ롣
�ʤ�����-128��128�ʳ��ξ��ϥ���å�����ɲä���ʤ��ݤ�����󥪥֥�������
��äƤ롣�����ܤ�(�����ء�`)
�����Ȥ��꤬�Ȥ��������ޤ���Integer�Υ��󥹥��������ư��Ϥ���Ŧ���̤�ǡ�javadoc�˵��ܤΡ����ˤ��׵ᤵ����ͤò¥¥ï¿½Ã¥ï¿½ï¿½å¤¹ï¿½ï¿½×¤È¤ï¿½ï¿½ï¿½É½ï¿½ï¿½ï¿½ï¿½ï¿½È¸ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ß¤ä¤¹ï¿½ï¿½ï¿½È¤ï¿½ï¿½ï¿½ï¿½Ï¤ï¿½ï¿½ï¿½Þ¤ï¿½ï¿½Í¡ï¿½
�����ˤˡפ�����λ����Ȥ��Ƥϼ������̤꤬����Ȼפ��ΤǤ�����
(1) �ְ��̤ˡפ褯�Ȥ�����
(2) ��VM��ư��ˡײ��٤�Ȥ�줿��
javadoc��ʸ���(1)��ؤ��Ƥ���Τʤ����������Ȥ������Ȥˤʤ�ޤ��������ܸ�Ū��(2)��ؤ��Ƥ���褦�ˤ�����Ǥ��롢�Ȥ����Τ�Ʊ���Ǥ���
(�ޤ��Ǥ⡢�����������ˤϤ̤�ݤ���⤽�����줿�褦�ˡ����������ǧ�����㤤�ޤ����ɤ� :))
���������˽ñ¤¤¤ï¿½ï¿½Ö»È¤ï¿½ï¿½ó¤·¤ï¿½ï¿½ï¿½ï¿½ï¿½Immutable�ʥ��֥������Ȥ�ʣ����������̵�̤˥ҡ��פ�����Τ�˾�ޤ����ʤ�����פȤ����Τϡ�������ư����θ���������ˤ����Ĥ��ǡ��ɤ��ͤξ��ˡֻȤ��󤷤������פΤ��ϥ��饹�Υ��󥹥�������μ����˰�¸����Τǡ���˥���å��夵��뤳�Ȥ��ݾڤ���Ƥ���櫓�ǤϤʤ���(�դˤ�������ȥ���å��奪�֥������Ȥβ����Υ����ߥ󥰤�ɤ����뤫�ǡ�����Ū�˲������뵡�����Ѱդ��뤫SoftReference��Ȥ��������ץꥱ�������Ū���������٤ι⤤�ͤ����ò¥¥ï¿½Ã¥ï¿½ï¿½å¤¹ï¿½ï¿½ï¿½ï¿½ï¿½Ñ¥ï¿½ï¿½é¥¹ï¿½ï¿½Ä¤ï¿½ï¿½ë¤«ï¿½ï¿½ï¿½È¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½)��static�ե����ȥ꡼�᥽�åɤ��Ѱդ���ƥ���å��夵����ǽ��������Τˡ����Immutable�ʥ��饹����������Τϥҡ��פ��Ф�����˽�Ǥ���͡��Ȥ����Τ����������ä��Ȥ����Ǥ���
�ȤƤ���ѤˤϤ�����ʤ��ȼ��Ф��ޤ�����