블로그 이미지
Magic_kit
study 관련자료를 한곳으로 자기 개발 목적으로 재태크 재무 관리 목적으로 일상생활의 팁을 공유 하기 위하여 블로그를 개설 하였습니다.

calendar

1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31

Category

Recent Post

Recent Comment

Archive

2010. 4. 27. 21:03 카테고리 없음
반응형

 C# 그리고 Java 의 오브젝트 타입과 Int 타입의 차이점 각각 서술하시오
 - C#의 object도 어떤 타입이라도 할당 할 수는 있지만 원본 타입을 알 수는 없습니다.
   한번 object로 변경이 되었다면 이전에 어떤 타입이었던지 상관없이 object의 특성만을 가지는 것입니다.
   하지만 {암시적으로 형식화된 변수(var) Local Variable Type Inference} 는 원본 타입을 추정 하므로 원본 타입의
   모든 멤버를 사용 할 수 있습니다. 아래 그림을 보시면 좀더 명확히 차이를 확인 할 수 있습니다.
 
var temp=1; //int temp=1; 선언과 동일함.
temp = "123" //오류발생 - 이미 int 형식을 가지므로 string 형식을 할당 할 수 없음


{object - 타입을 추정하지 못함}
             다른 모른 타입의 기본이 되는 타입 입니다.


- C# 의 Int 타입 : 부호 있는 32비트 정수 타입



- Java 의 오브젝트 타입과 Int 타입 
  
자바에서는 java.lang.Object란 클래스가 제공됩니다. 
    자바의 객체로서의 최소한의 기능들과 최소한의 속성들을 정의하고 있습니다.
    그리고 자바의 모든객체들이 Object란 클래스를 상속받도록 되어 있죠..
    우리가 임의의 클래스를 만든다고 해도 그 클래스는 Object Class를 default로 상속받고 있죠.

    public class AClass{} 는 사실상 public class AClass extends Object{} 가 되는겁니다.
    그래서 우리가 객체를 만들면 Object를 상속 안받았어도 equals메소드라든지 toString메소드를 사용 
    보통은 재 정의해서 사용을 하죠...

    자바는 객체지향 언어로 다형성이란 기능을 제공하기 위해 선조 클래스의 참조변수로 후손의 객체를 참조 가능 

    Object obj = new AClass();

    자바에서는 data type을 크게 두가지로 나눌수 있읍니다. 
    primary type과 Object type..

    primary type에는 boolean, byte, char, int, long, float, double등이 있고,
    Object type은 말그대로 class가 되는거구요. 
  
    그래서 결론은 자바의 모든 객체를 관리하기 위해 Object라는 클래스를 만들어 둔다고 생각하시면 됩니다.

ex) AClass obj = new AClass(); // AClass의 객체를 만듭니다.
        Stack stack = new Stack(); // Stack을 만듭니다.
        stack.add(obj);    //Object를 stack에 집어 넣는거죠. 

        ACass obj2 = (AClass)stack.get(0);// Stack에서 Object로 꺼내온 후 AClass로 형변환 합니다.





반응형
posted by Magic_kit