Java 4

JAVA 업캐스팅 & 다운캐스팅

오늘은 자바(Java) 객체 지향 프로그래밍에서 매우 중요하고도 헷갈릴 수 있는 '업캐스팅(Upcasting)'과 '다운캐스팅(Downcasting)'에 대해 알아보는 시간을 가지자. 이 개념들을 명확히 이해하시면 자바의 '다형성(Polymorphism)'을 더욱 효과적으로 활용할 수 있을것이다. 자바에서 상속 관계에 있는 클래스들 사이의 형 변환, 즉 '캐스팅(Casting)'은 객체를 더욱 유연하게 다루고 다형성을 구현하는 데 필수적인 기술이다. 기본형 변수의 캐스팅이 값의 변화를 가져온다면, 참조형 변수의 캐스팅은 참조할 수 있는 멤버의 개수를 조절하는 것이라고 생각할 수 있다.업캐스팅(Upcasting)업캐스팅은 자식 클래스의 객체를 부모 클래스 타입으로 형 변환하는 것을 의미한다. 특징명시적인 ..

Java 2025.07.20

Wrapper 클래스와 Boxing & UnBoxing

프로그래밍을 하다 보면 원시(기본) 타입(primitive type) 의 데이터를 객체로 표현해야 하는 경우가 종종 생기게 된다. Java는 객체 지향 언어이고, 모든 것을 객체로 다루려는 지향점을 가지고 있다. 그런데 원시 타입은 객체가 아니다. 이 점에서 한계가 발생한다. 이럴 때에 원시 타입을 객체로 다루기 위해서 사용하는 클래스들을 래퍼 클래스(wrapper class)라고 한다. 자바는 모든 원시 타입은 값을 갖는 객체를 생성할 수 있다. 이런 객체를 포장 객체라고도 한다. Wrapper 클래스 Wrapper 클래스는 이름 그대로 원시(기본) 타입의 값을 '감싸서(wrap)' 객체 형태로 만들어주는 클래스이다.이를 통해 우리는 원시 타입의 데이터를 객체처럼 다루고, 다양한 객체 지향적인 기능..

Java 2025.07.19

변수의 기본형 & 참조형 타입

변수(variable)란?- 데이터(data)를 저장하기 위해 프로그램에 의해 이름을 할당받은 메모리 공간을 의미데이터 타입(자료형)이란?- 변수에 적재할 데이터가 메모리에 어떻게 저장되고 프로그램에서 어떻게 처리되어야 하는지를 명시적으로 알려주는 키워드 데이터 타입(자료형)은 크게 기본형 타입 과 참조형 타입으로 구분기본형(primitive type) : 계산을 위해 실제 값을 저장한다.참조형(reference type) : 객체의 주소를 저장한다. null 또는 객체의 주소(4byte, 0x0 ~ 0xffffffff)를 갖는다.기본형 타입 (Primitive Type)종류논리형 (boolean)문자형 (char)정수형 (byte, short, int, long)실수형 (float, double) ..

Java 2025.07.18

Call by Value, Reference

Call by ValueCall by Value는 함수를 호출할 때 인수로 전달받은 값을 복사하여 함수 내에서 사용하는 방식이다. 이 방식에서는 함수 내에서 전달받은 값을 변경해도 원본 값에는 영향을 미치지 않는다. 예를 들어, 자바에서 기본 타입(int, float 등)을 함수에 전달할 때 Call by Value 방식이 적용된다. 이 경우, 함수 내에서 변수의 값을 변경하더라도 원본 변수의 값은 변하지 않는다.class Operation { int data = 50; void change(int data) { data = data + 100; // 이 변경은 로컬 변수에만 영향을 미친다. } public static void main(String args[]) { Operation ..

Java 2025.06.02