java 6

[Java] 지네릭스(Generics) 의 개념과 활용에 대해 알아보기

지네릭스? 지네릭스란 다양한 타입의 객체들을 다루는 메서드 혹은 컬렉션 클래스에 컴파일 시 타입을 체크해주도록 하는 기능이다.컴파일시 생성된 객체의 타입을 체크해주기 때문에 타입의 안정성을 높이고 형변환이 간편하다는 장점이있다. ✍️ 지네릭스의 표기List list = new ArrayList();흔히 컬렉션에서 이런식으로 컬렉션을 사용하는 경우를 많이 보았을 것이다. List는 제네릭스로 타입을 체크할 수 있도록 되어있다.해당 list는 String 으로 지정하였기때문에 String 이외에 타입이 저장될 경우 컴파일 에러가 발생한다. 따라서 컴파일시 타입체크를 함과 동시에 다른 타입이 저장되지 못하도록 타입 안정성이 생기는 것 이다. 🔍 모든 타입을 받는 지네릭스지네릭스는 타입을 지정하는 동시에..

Java 2025.05.14

[Java] 상속관계에서의 Super와 Super()의 대해서 알아보기

자바에서는 객체지향 프로그래밍으로 클래스 간의 상속이 가능하다.  상속해주는 클래스를 조상 클래스상속 받는 클래스를 자식 클래스라고 한다.  🔍 간단한 상속 예제◾ Parent 클래스class Parent{ String name; //기본 생성자 Parent(){}; //초기화 생성자 Parent(String name){ this.name = name; }}◾ Child 클래스class Child extends Parents{ String gender; //기본 생성자 Child(){}; //초기화 생성자 Child(String name,String gender){ this.name = name; this.gender = ge..

Java 2025.03.26

[Java] 다형성이 무엇이고 왜 사용할까?

🔴 다형성다형성이란 하나의 객체가 여러개의 타입을 가질 수 있는 것을 의미한다. 🔍 예를 들어◾ Animal 클래스abstract public class Animal { String kind; void breath() { System.out.printf("%s는 숨을 쉽니다.\n",kind); } abstract void sound();👉 Animal은 추상클래스로 지정한다.◾ Cat 클래스 / Dog 클래스//Catclass Cat extends Animal{ //기본생성자 Cat(){super.kind = "고양이";} //오버라이딩 @Override void sound() { System.out.println("야옹"); } //Cat만의 메서드 void ..

Java 2025.03.26

[Java] 인스턴스 초기화 블럭이 무엇이고 어떨 때에 사용될까?

❓ 초기화 블럭이란 객체가 생성될 때 실행 되는 코드 블럭으로 클래스 내부에 {}로만 감싸져있는 실행문이 객체 생성 시 마다 실행된다.  🔍 사용 예시◾ 클래스 내부에 인스턴스 초기화 블럭 생성class Student{ public String name; //초기화 블럭 { this.name = "홍길동"; System.out.println("Student 객체가 생성되었습니다!"); }}◾ 인스턴스 생성Student s1 = new Student();System.out.println(s1.name);👉 Student 객체가 생성되었습니다!              홍길동     출력    🔷 인스턴스 초기화 블럭을 사용하는 경우   1️⃣ 여러 생성자들 중에서 공..

Java 2025.03.25

[Java] Static 에 대해 알아보고 non_Static과의 동작 차이를 살펴보기

❓ Static 이란static은 정적 변수라고도 하며, 클래스 수준에서 메서드, 변수 ,클래스를 선언할 때 같이 사용된다. ❓ Static의 특징 일반적으로 클래스를 설계하고 그 안에 멤버변수나 멤버메서드를 사용하기 위해서는 new 연산자를 활용하여 인스턴스화하여 접근해야 가능하다.그러나 static은 모든 클래스들에게 공유되는 특성을 가지며, 따로 인스턴스화 하지않고도 클래스명을 통해 접근이 가능하다. 🔍 Static 사용◾ static 선언 방법public static 변수 or 메서드 or 클래스 public static void main(String[] args) {}👉 main 외부에서 생성하도록 하며 변수,메서드,클래스에 적용 가능하다.◾ Static이 없을 경우에 접근//파일명 : Pe..

Java 2025.03.21

[Java] 형 변환 Casting의 프로모션과 디모션에 대해 알아보기

자바에는 여러 타입들이 있으며 각각의 타입에는 저장가능한 범위가 정해져있다. ❓Casting 이란  타입들간에 형 변환을 의미하며, 작은 타입에서 큰 타입으로 변하거나 반대로 큰 타입에서 작은 타입으로 변하는지에 따라 자동으로 변하거나 명시적으로 변환해주거나가 달라지게된다. 🔷 자바의 타입들1바이트 : byte / char2바이트 : short4바이트 : int / float8바이트 : double / long  🔴 프로모션작은 타입을 큰 타입으로 변환하는 것을 프로모션이라고 한다. 프로모션은 작은 타입에서 큰 타입으로 변한다는 조건아래 자동으로 형 변환이 이루어진다. 🔍 예시 short num = 10;System.out.printf("%d",10); 👉  short  > int 로 자동으로 형..

Java 2025.03.18