Java ๊ฐ์ฒด getClass() ๋ฉ์๋๋ ๋ฌด์์ ๋๊น?
Java๋ ์ฌ์ฉ๋ ๋ชจ๋ ๊ฐ์ฒด์ ํด๋์ค๋ฅผ ๊ฐ์ ธ์ค๊ธฐ ์ํด Object ํด๋์ค์์ ์ ๊ณตํ๋ getClass() ๋ผ๋ ๋ฉ์๋๋ฅผ ์ฌ์ฉํฉ๋๋ค .๋ฉ์๋ ํค๋
public final Class<?> getClass()
์ด ๋ฉ์๋๋ ๋งค๊ฐ ๋ณ์๋ฅผ ์ฌ์ฉํ์ง ์์ผ๋ฉฐ ํด๋์ค๋ฅผ ๊ฐ์ ธ์์ผ ํ๋ ๊ฐ์ฒด์ ๋ํด ํธ์ถ๋ฉ๋๋ค.
๋ฐํ ์ ํ
์ด ๋ฉ์๋๋ "๊ฐ์ฒด"์ ํด๋์ค๋ฅผ ๋ฐํํฉ๋๋ค.์
public class DriverClass {
public static void main(String[] args) {
Object myObject = 25;
Class myObjectClass = myObject.getClass();
System.out.println("Class of \"" + myObject + "\" = " + myObjectClass.getName());
myObject = Float.NaN;
myObjectClass = myObject.getClass();
System.out.println("Class of \"" + myObject + "\" = " + myObjectClass.getName());
myObject = Short.MIN_VALUE;
myObjectClass = myObject.getClass();
System.out.println("Class of \"" + myObject + "\" = " + myObjectClass.getName());
myObject = 37.99999999000099990;
myObjectClass = myObject.getClass();
System.out.println("Class of \"" + myObject + "\" = " + myObjectClass.getName());
myObject = Long.MAX_VALUE;
myObjectClass = myObject.getClass();
System.out.println("Class of \"" + myObject + "\" = " + myObjectClass.getName());
myObject = "This is a String.";
myObjectClass = myObject.getClass();
System.out.println("Class of \"" + myObject + "\" = " + myObjectClass.getName());
}
}
์ฐ์ถ
"25" ํด๋์ค = java.lang.Integer "NaN" ํด๋์ค = java.lang.Float "-32768" ํด๋์ค = java.lang.Short "37.999999990001" ํด๋์ค = java.lang.Double ํด๋์ค "9223372036854775807" = java.lang.Long "์ด๊ฒ์ ๋ฌธ์์ด์
๋๋ค."์ ํด๋์ค์
๋๋ค. = java.lang.String
๊ฒฐ๋ก
์ด๊ฒ์ด ๋ฐ๋ก Java์์ Object ํด๋์ค ์ getClass() ๋ฉ์๋ ๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ๊ฐ๋จํ๊ฒ ๋ง๋๋ ๊ฒ์ ๋๋ค . ๋ค์ ํ์ต ๋จ๊ณ์์๋ ์ฌ์ฉ์ ์ ์ ํด๋์ค๋ฅผ ์ ์ํ๊ณ ํ ์คํธํ ์ฌ์ฉ์ ์ ์ ๊ฐ์ฒด์ ๋ํด ์ด ๋ฉ์๋๋ฅผ ํธ์ถํฉ๋๋ค. ์ด ๊ฒ์๋ฌผ์ ์์ ์ด๋ ๋ฐฉํด๊ฐ ์๋ ๊ฒฝ์ฐ ์ธ์ ๋ ์ง ๊ทํ๋ฅผ ํ์ํฉ๋๋ค. ๊ทธ๋๊น์ง ๊ณ์ ๋ฐฐ์ฐ๊ณ ๊ณ์ ์ฑ์ฅํ์ธ์!
๋ ์ฝ์ด๋ณด๊ธฐ: |
---|
GO TO FULL VERSION