private $B=$>~;R(B

Revised: Jan./3rd/2004; Since: Dec./21st/2003

private

$B%"%/%;%9=$>~;R$NCf$G:G$b$-$D$$$N$,(B private $B$G$9!#%/%i%9$N(B private $B=$>~;R$,IU$5$l$?%a%s%P!<$O!"Ev3:%/%i%9Fb$+$i$7$+%"%/%;%9$G$-$^$;$s!#FbIt%/%i%9$+$i$O;2>H2DG=$G$"$j!"F1$8%/%i%9$+$i%$%s%9%?%s%92=$5$l$?%*%V%8%'%/%H$+$i$OAj8_$K;2>H$G$-$^$9!#(B

$B%"%/%;%9=$>~;R$O!"@)8B$r~$5$l$?%U%#!<%k%I$O%*!<%P!<%i%$%IIT2D$J$N$G$9$,!"8=$H0z?t$NAH!K$N%a%=%C%I$r%5%V%/%i%9$GDj5A2DG=$G$9!#(B

$B$3$l$,$$$C$?$$$I$&$$$&$3$H$J$N$+0J2<$G@bL@$7$^$9!#(B

final

final $B$O!"(B$B7Q>5(B$B$K$h$C$F(B$B%*!<%P!<%i%$%I(B$B$G$-$J$$%a%s%P!<$r@k8@$9$k=$>~;R$G$9!#(Bprivate $B$J%a%s%P!<$O!"<+F0E*$K(B final $B$G$9!#F1$8%/%i%9Fb$+$i$N$_%"%/%;%9$,5v$5$l$F$$$k$N$G!"7Q>5$9$k%5%V%/%i%9$+$i$b%"%/%;%9$G$-$^$;$s!#$7$?$,$C$F!"8@8l;EMM>e!"7Q>5$K$h$j%*!<%P!<%i%$%I$9$k$3$H$O$G$-$:!"K\final $B$H$J$k$N$G$9!#(B

Java $B$G$O!"7Q>5$G%*!<%P!<%i%$%I$G$-$k%a%s%P!<$O!"%"%/%;%92DG=$J$b$N$K8B$i$l!"(Bprivate $B$J%a%s%P!<$O!"30It$N0l@Z$N%/%i%9$+$i%"%/%;%9IT2DG=$J$N$G%*!<%P!<%i%$%I$G$-$J$$$N$G$9!#(B

$B8@8l;EMM$H$7$F!"(Bprivate $B$J%a%s%P!<$O%*!<%P!<%i%$%I$G$-$J$$$3$H$r3P$($F$/$@$5$$!#(B

$B%*!<%P!<%i%$%I$H1#JC$H(B private

private $B$J%a%s%P!<$O%*!<%P!<%i%$%I$5$l$;$s!#F10l%/%i%9Fb$+$i$7$+%"%/%;%9$G$-$J$$$N$G!"%5%V%/%i%9$G7Q>5$9$k%*!<%P!<%i%$%I$N35G0$K$"$o$J$$$+$i$G$9!#$7$+$7!"%"%/%;%9$G$-$J$$$?$a!"$^$C$?$/?7$?$J%a%s%P!<$H$7$FDj5A2DG=$G$9!#(B

$B%*!<%P!<%i%$%I$H$O!"!V%9!<%Q!<%/%i%9$GDj5A$5$l$F$$$k%a%=%C%I$H!"F1$8%a%=%C%IL>$HF1$8%7%0%M%A%c$r;}$D%a%=%C%I$r%5%V%/%i%9$GDj5A$9$k!W$3$H$G$9!#$3$N$H$-!"r7o$N2?$l$+$rK~$?$5$J$1$l$P%3%s%Q%$%k%(%i!<$K$J$j$^$9!#(B

static $B=$>~$5$l$F$$$k%a%=%C%I$K4X$7$F$O!"99$Kr7o$,M?$($i$l$^$9!#(B

$B%9!<%Q!<%/%i%9$N(B private $B%a%=%C%I$r%5%V%/%i%9$G:FDj5A$9$k$H$-!"%*!<%P!<%i%$%I$d1#JC(B (hide) $B$N>r7o$rK~$?$9I,MW$,L5$/!"40A4$K<+M3$K%a%=%C%I$r:FDj5A2DG=$G$9!#(B

$B%$%s%i%$%s2=(B

private $B$d(B static $B$J%a%=%C%I$O!"%$%s%i%$%s2=$5$l$k2DG=@-$,$"$j$^$9!#%$%s%i%$%s2=$H$O!"%*%V%8%'%/%H$N%a%=%C%I$X$N;2>H$r;}$DBe$o$j$K!"Ev3:%a%=%C%I$=$N$b$N$r%a%b%j$NO"B3NN0h$KE83+$9$k$3$H$G$9!#%]%$%s%?$r7PM3$9$k$3$H$r>J$/$N$G!"%Q%U%)!<%^%s%9$,8~>e$7$^$9!#C"$7!"(BJVM $B$,M5$,$"$k>l9g$K!"$=$N$[$+$N%j%=!<%9$N;HMQN($HAjCL$7$?>e$G!"(B JVM $B$,F0:n$rJQ99$7$^$9!#(B

$B%a%s%P!<$N(B private $B=$>~(B

$B%U%#!<%k%I$N(B private

$B%a%s%P!private $B$K$7$^$9!#(B

$B%/%i%930It$+$i$N%"%/%;%9$O!"%"%/%;%9MQ$N%a%=%C%I$r8x3+$7$^$9!#$3$N%a%=%C%I$r%"%/%;%C%5!

PrivateFieldDemo.java:

class PrivateField {
	private String name;
	PrivateField(String aName) {
		name = aName;
	}
	public String getName() {
		return name;
	}
	public void setName(String aName) {
		// $BF1$8%/%i%9$@$+$i%"%/%;%92DG=(B
		name = aName;
	}
	public void setName(PrivateField obj, String aName) {
		// $BJL$N%*%V%8%'%/%H$G$bF1$8%/%i%9$@$+$i%"%/%;%92DG=(B
		obj.name = aName;
	}
}
class PrivateFieldDemo {
	public static void main(String[] args) {
		PrivateField obj1 = new PrivateField("suzuki");
		PrivateField obj2 = new PrivateField("tochihara");
		
		System.out.println("obj1.name(): " + obj1.getName());
		System.out.println("obj2.name(): " + obj2.getName());
		obj1.setName("hiroe");
		obj1.setName(obj2, "sekiya");
		System.out.println("obj1.name(): " + obj1.getName());
		System.out.println("obj2.name(): " + obj2.getName());
	}
}

$B

C:\java>javac PrivateFieldDemo.java
C:\java>java PrivateFieldDemo
obj1.name(): suzuki
obj2.name(): tochihara
obj1.name(): hiroe
obj2.name(): sekiya
C:\java>

$B%a%=%C%I$N(B private

private $B$J%a%s%P!<$O%*!<%P!<%i%$%IIT2D$G$9!#$7$+$7!"%5%V%/%i%9$GF1$8%7%0%M%A%c!J%a%=%C%IL>$H0z?t$NAH!K$N%a%=%C%I$rDj5A$9$k$3$H$,2DG=$G!"8=>]E*$K$O%*!<%P!<%i%$%I$HF1$8$G$9$,!"$^$C$?$/?7$7$$%a%=%C%I$rJLESDj5A$7$F$$$k$3$H$K$J$k$?$a!"%*!<%P!<%i%$%I$N@)Ls$r0l@Z

PrivateOverrideDemo.java:

class PrivateSuper {
	private String msg = "Bye";
	private String getPrivateMsg() {
		return msg;
	}
}
class PrivateOverride extends PrivateSuper{
	private String msg = "Hello";
	private String getPrivateMsg() {	// private $B%a%=%C%I$N%*!<%P!<%i%$%I$N$h$&$K8+$($k(B
		// String str = super.msg;	// javac Error
		// String str = super.getPrivateMsg();	// javac Error
		String str = msg;
		return str;
	}
	public String getMsg() {
		return this.getPrivateMsg();
	}
}
class PrivateOverrideDemo {
	public static void main(String[] rags) {
		PrivateOverride obj = new PrivateOverride();
		// System.out.println(obj.getPrivateMsg());	// javac Error
		System.out.println(obj.getMsg());
	}
}

$B%3%s%9%H%i%/%?$N(B private

$B%3%s%9%H%i%/%?$O!"%/%i%9$,%$%s%9%?%s%92=$5$l$k$H$-$KI,$:8F$S=P$5$l$k$b$N$G!"%/%i%9$N%a%s%P!<$G$O:_$j$^$;$s!#%3%s%9%H%i%/%?$O%$%s%9%?%s%92=$5$l$kA0$K8F$S=P$5$l$k$N$G!"<+F0E*$K(B static $B$G$9!#(B

$B%3%s%9%H%i%/%?$r(B private $B=$>~$9$k>l9g$r9M$($^$7$g$&!#(Bprivate $B$OB>$N%/%i%9$+$i$O0l@Z%"%/%;%9ITG=$J$N$G!"(Bprivate $B%3%s%9%H%i%/%?$7$+;}$?$J$$%/%i%9$O%$%s%9%?%s%92=ITG=$K;W$o$l$^$9!#$7$+$7!"$=$&$G$O$J$$$N$G$9!#(B

$B%3%s%9%H%i%/%?$r(B private $B$K$9$k%a%j%C%H$O!"B>$N%3!<%I$,>!private static $B$J%U%#!<%k%I$K<+J,$N%$%s%9%?%s%9$rMQ0U$7$F!"(Bgetter $B%a%=%C%I$r2p$7$F

class SingletonDemo {
	private static SingletonDemo obj = new SingletonDemo();
	
	private SingletonDemo() {
		// $BE,Ev$J=i4|2=(B
	}
	
	public Singleton getSingletonInstance() {
		return obj;
	}
}

$B%U%#!<%k%I!J%/%i%9$N%a%s%P!<$G$"$kJQ?t!K$KDj5A$5$l$?%*%V%8%'%/%H$O!"(Bstatic $B@k8@$5$l$F$$$k$N$G!"%/%i%9$N%m!<%I;~$K$?$@0l2s$@$1$C$F!"%/%i%9$,2?EY;2>H$5$l$h$&$H$b!"$?$@0l2s$@$1=i4|2=$5$l!"@8@.$5$l$k%$%s%9%?%s%9$b!"0l$D$N(B JVM $B$GM#0l$D$@$1$K@)8B$5$l$^$9!#(B



Copyright © 2003-2004 SUGAI, Manabu. All Rights Reserved.
SEO [PR] 爆速!無料ブログ 無料ホームページ開設 無料ライブ放送