instanceof
$B1i;;;R(BRevised: Mar./9th/2002
$BA0@a$^$G$G8+$F$-$?DL$j!"%*%V%8%'%/%H7?JQ?tF1;N$NBeF~$,5v$5$l$k$N$O!";2>H$9$k%*%V%8%'%/%H$,!"$=$N%/%i%97?$KBP1~$9$k%$%s%9%?%s%9$r;}$C$F$$$k$+$I$&$+$G$9!#%5%V%/%i%9$r%$%s%9%?%s%92=$7$?%*%V%8%'%/%H$O!"L@$i$+$K%9!<%Q!<%/%i%9$N%$%s%9%?%s%9$r4^$s$G$$$k$N$G!"%5%V%/%i%97?%*%V%8%'%/%H$O%9!<%Q!<%/%i%97?JQ?t$KBeF~$G$-$^$9!#$=$N5U$O!"I,$:$7$b2DG=$G$O$J$/!"2DG=$G$"$C$F$bL@<(E*$K%-%c%9%H$,I,MW$G$7$?!#(B
$B%*%V%8%'%/%H$,!"FCDj$N%/%i%9$N%$%s%9%?%s%9$r4^$s$G$$$k$N$+I>2A$9$k$N$,(B intstanceof
$B1i;;;R$G$9!#1i;;;R$N:8JU$KG$0U$N;2>H!"1&JU$K$O%/%i%9!?G[Ns!?%$%s%?%U%'!<%9$r5-=R$7$^$9!#(B
InstanceTest.java
:
//Date $B%/%i%9$N%$%s%]!<%H(B
import java.util.Date;
class InstanceTest {
public static void main(String[] args) {
Date obj = new Date();
boolean bln = (obj instanceof Date);
System.out.println(bln);
System.out.println(obj);
}
}
$B$3$3$G$OI8=`%/%i%9%i%$%V%i%j$N(B Date
$B%/%i%9$r%$%s%9%?%s%92=$7$F$$$^$9!#$3$N%/%i%9$rMxMQ$9$k$?$a$K$O!"#29TL\$N$h$&$K!"$3$N%/%i%9$,4^$^$l$F$$$k(B$B%Q%C%1!<%8(B$B$bL@<($7$?(B$B40A48BDjL>(B$B$r(B$B%$%s%]!<%H(B$B$9$k$N$,IaDL$G$9!#(B
$B$3$N$h$&$K$7$F:n$C$?%*%V%8%'%/%H$r;2>H$9$kJQ?t(B obj
$B$,!"K\Ev$K(B Date
$B%/%i%9$N%$%s%9%?%s%9$r;2>H$7$F$$$k$N$+%A%'%C%/$7$F$$$^$9!#(B
C:\Java>javac InstanceTest.java C:\Java>java InstanceTest true Sat Mar 09 22:34:54 JST 2002
java.lang.Object
$B%/%i%9$OA4$F$N%/%i%97Q>53,AX$N%H%C%W$G$9$+$i!"$3$N7?$NJQ?t$K$OG$0U$N%/%i%97?$NCM$rBeF~$G$-$^$9!#
InstanceChk.java
:
class Sml1 { void whois() { System.out.println("Sml1$B$G$9!#(B"); } } class Sml2 { void whois() { System.out.println("Sml2$B$G$9!#(B"); } } class InstanceChk { public static void main(String[] args) { //$B%$%s%9%?%s%92=(B Sml1 obj1 = new Sml1(); Sml2 obj2 = new Sml2(); //$B%a%=%C%I8F$S=P$7(B obj1.whois(); objChk(obj1); obj2.whois(); objChk(obj2); } static void objChk(Object obj) { if (obj instanceof Sml1) { System.out.println("$B$3$N%/%i%9$OCN$C$F$$$^$9!#(B"); } else { System.out.println("$B$=$s$J%/%i%9$OCN$j$^$;$s!#(B"); } } }
$BFs$D$N%/%i%9$r:n@.$7!"$=$l$rJL!9$K%$%s%9%?%s%92=$7$F$$$^$9!#$=$l$>$l$N%*%V%8%'%/%H$r;2>H$9$kJQ?t$r!"(B java.lang.Object
$B7?$H$7$F%a%=%C%I0z?t$KEO$7$F!"$=$N%$%s%9%?%s%9$r%A%'%C%/$7$F$$$^$9!#(B
C:\Java>javac InstanceChk.java C:\Java>java InstanceChk Sml1$B$G$9!#(B $B$3$N%/%i%9$OCN$C$F$$$^$9!#(B Sml2$B$G$9!#(B $B$=$s$J%/%i%9$OCN$j$^$;$s!#(B
$B%5%V%/%i%97?%*%V%8%'%/%H$X$N;2>H$O!"%9!<%Q!<%/%i%97?JQ?t$KBeF~$G$-$^$9!#$3$N>l9g$OL@<(E*$J7?JQ49$OI,MW$J$/!"BeF~@h$N%9!<%Q!<%/%i%97?$K<+F07?JQ49$5$l$^$9!#$3$NJQ?t$O%9!<%Q!<%/%i%97?$G$9$,!";2>H$7$F$$$k
$B!V%5%V%/%i%97?(B --> $B%9!<%Q!<%/%i%97?(B --> $B%5%V%/%i%97?!W$H7?JQ49!?BeF~$r7+$jJV$7$F$$$-!"$=$NETEY;2>H@h$N $B$3$3$K$O!"%9!<%Q!<%/%i%9(B $B$^$?!"%a%=%C%I(B $B7?JQ49$K$h$C$F!";2>H$7$F$$$kCastChk.java
:
class Parent {
void whois() {
System.out.println("$B;d$O?F!#(B");
}
}
class Child extends Parent {
void whois() {
System.out.println("$B;d$O;R6!!#(B");
}
}
class CastChk {
public static void main(String[] args) {
//$B%$%s%9%?%s%92=(B
Child obj1 = new Child();
obj1.whois();
System.out.print(" Child: " + (obj1 instanceof Child));
System.out.println(" Parent: " + (obj1 instanceof Parent));
//$B7?JQ49(B
Parent obj2 = obj1;
obj2.whois();
System.out.print(" Child: " + (obj2 instanceof Child));
System.out.println(" Parent: " + (obj2 instanceof Parent));
//$B%-%c%9%H(B
Child obj3 = (Child)obj2;
obj3.whois();
System.out.print(" Child: " + (obj3 instanceof Child));
System.out.println(" Parent: " + (obj3 instanceof Parent));
}
}
Parent
$B$H$=$N%5%V%/%i%9(B Child
$B$,B8:_$7$^$9!#%5%V%/%i%9$N%*%V%8%'%/%H$r:n@.$7!"$=$N;2>H$r(B Child
$B7?!"(B Parent
$B7?!"(B Child
$B7?$K7?JQ49$7$F$$$^$9!#(Bwhois()
$B$,%*!<%P!<%i%$%I$5$l$F$$$k$3$H$K$bCmL\$7$F$/$@$5$$!#(B
C:\Java>javac CastChk.java
C:\Java>java CastChk
$B;d$O;R6!!#(B
Child: true Parent: true
$B;d$O;R6!!#(B
Child: true Parent: true
$B;d$O;R6!!#(B
Child: true Parent: true
Copyright © 2001 SUGAI, Manabu. All Rights Reserved.
SEO
[PR] 爆速!無料ブログ 無料ホームページ開設 無料ライブ放送