컴퓨터는 잘못이 없다..

[JAVA]java.lang패키지 Object클래스/Object클래스와 업캐스팅, 다운캐스팅 본문

공부/JAVA

[JAVA]java.lang패키지 Object클래스/Object클래스와 업캐스팅, 다운캐스팅

도토리까꿍v 2020. 12. 7. 03:34
Contents 접기

[java.lang패키지와 Object클래스]

1.java.lang패키지import하지 않아도 자동으로 포함된다.

2.java.lang패키지에는 Object클래스, String클래스, Boolean클래스, Byte클래스, Short클래스, Integer클래스,

Long클래스, Float클래스, Double클래스들이 있다!

여기서 Object클래스는 모든 클래스의 상위클래스이다.

Phone, HandPhone, SmartPhone은 개발자가 만든 클래스이다. 

 

 

 

 

 

[예제코드]

C.java

package test.main;

public class C {
	public static void main(String[] args) {
		
		
		Object o="Hello";

		//String s = o; --> 에러가 난다. 
		String s = (String)o;
		
	
	}
}

 

[코드설명]

C.java 설명

1. 여기서 java.lang패키지는 import하지 않아도 자동으로 포함된다.

 

따라서 java.lang패키지 내 모든 클래스를 import하지 않고 사용가능하다.

ex) String a="Hi"; 에서 String클래스는 import를 별도로 하지 않아도 사용가능!

 

2. 모든 클래스는 Object클래스를 상속받는다. C클래스도, String클래스도 Object가 부모클래스이다.

 

Object o = "Hello"; 는 업캐스팅

String s = (String)o; 는 다운캐스팅이다.

-> Object클래스는 String클래스의 부모클래스이다! 반대로 말하면 String클래스는 Object클래스의 자식클래스이다!

 

Comments