용어/java 12

[JAVA] 상속, 다형성 오버라이딩 된 메서드의 우선권

오버라이딩된 메서드는 객체의 실제 타입에 따라 자식 클래스의 메서드가 호출되고,변수는 참조 변수의 타입에 따라 부모 클래스의 변수를 참조한다.즉 오버라이딩 된 메서드는 항상 우선권을 가진다.  [변수와 메서드 접근 차이]변수메서드변수는 참조 변수의 타입에 따라 결정즉, 부모 타입의 참조 변수를 통해 객체를 접근할 때, 변수는 부모 클래스에 정의된 변수를 참조이를 정적 바인딩(static binding) 또는 컴파일타임 바인딩(compile-time binding)이라고 함메서드는 객체의 실제 타입에 따라 결정- 즉, 부모 타입의 참조 변수를 통해 객체를 접근할 때,  오버라이딩된 메서드는 자식 클래스에서 정의된 메서드   가 호출이를 동적 바인딩(dynamic binding) 또는 런타임 바인딩(runt..

용어/java 2024.07.01

[국비][JAVA] 지네릭스(제네릭) 예시를 통해 이해하기

데이터 타입을 유연하게 지정하여 코드의 재사용성과 안정성을 높이는 기능항목설명예시정의클래스나 메서드에서 사용할 데이터 타입을 외부에서 지정class Box { T value;}장점타입 안정성 보장, 코드 재사용성 증가List list = new ArrayList();타입 파라미터클래스/메서드에서 사용하는 데이터 타입을 가리키는 변수, , 제네릭 클래스특정 데이터 타입에 의존하지 않고, 다양한 타입으로 객체 생성class Box { T value;}제네릭 메서드메서드 내부에서 사용할 데이터 타입을 유연하게 지정public void print(T t) { }제네릭 인터페이스특정 데이터 타입에 의존하지 않고, 다양한 타입으로 구현interface Comparable제한된 제네릭특정 타입이나 그 하위  타입으..

용어/java 2024.06.08

[국비][JAVA] list 이해하기

▶ 컬렉션 프레임웍 이해하기https://zoooom-in.tistory.com/123 [국비][JAVA] 컬렉션 프레임웍의 큰 틀 이해하기▶ java.util package 참고하기https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/package-summary.html java.util (Java SE 11 & JDK 11 ) docs.oracle.com [컬렉션 프레임워크 상속 계층도]인터페이스특징List- 순서zoooom-in.tistory.com  항목ArrayListLinkedList공통점선언new ArrayList()new LinkedList()선언시 배열 크기 지정 불필요데이터 구조동적 배열이중 연결 리스트Collec..

용어/java 2024.06.08

[국비][JAVA] 컬렉션 프레임웍의 큰 틀 이해하기

▶ java.util package 참고하기https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/package-summary.html java.util (Java SE 11 & JDK 11 ) docs.oracle.com [컬렉션 프레임워크 상속 계층도]인터페이스특징List- 순서 O, 중복 O  ex) 대기자 명단구현클래스 : ArrayList, LinkedList etc ...Set- 순서X, 중복X ex) 양의 정수 집합, 소수의 집합 ⇒ 집합체구현클래스 : HashSet etc..Map- 키(key)와 값(value)의 쌍으로 이루어진 데이터의 집합  순서X, 중복Oex) ID - PW구현클래스 : HashMap, TreeM..

용어/java 2024.06.08

[국비][JAVA] Split과 StringTokenizer 비교

SplitStringTokenizer- 같은 타입을 하나 하나로 분리할 때 유용- 다른 타입을 묶어서 분리할 때 유용  [예제 코드]public class tokenStudy1 { //split은 하나하나를 분리하고, 확인할 때 많이 사용한다. --> ex) 민지, 해린, 혜인, 하니, 다니엘 //StudyTokenizer은 묶음으로 분리할 때 많이 사용한다 --> ex) 민지 21살 해린 19살 혜인 17살 하니 21살 다니엘 20살 public static void main(String[] args) { String name = "민지,해린,혜인,하니,다니엘"; //Split 사용시 --> 같은 타입에 유용 String [] names = name..

용어/java 2024.06.08

[국비][JAVA] 오토박싱과 언박싱

래퍼 클래스는 기본형 값을 객체로 감싸는 역할ex) 예를 들어, int 기본형 값은 Integer 객체로 래핑오토박싱 (Autoboxing) 언박싱 (Unboxing) - 기본형 값을 자동으로 그에 대응하는 래퍼 타입 객체로 변환   ex) int 값을 Integer 객체로 자동 변환합니다.- 언박싱은 래퍼 타입 객체를 자동으로 그에 대응하는   기본형 값으로 변환하는 것   ex) Integer 객체를 int 값으로 자동 변환합니다.∴ 래퍼타입에 기본형을 담을 수 있음∴ 기본형에 래퍼타입을 담을 수 있음※ 기본형(primitive type)과 래퍼 타입(wrapper type) 간의 자동 변환  [기본형에 래퍼 타입을 담기]Integer wrapperInt = new Integer(10);int pr..

용어/java 2024.06.04

[국비][JAVA] 인터페이스와 추상(abstract) 차이

구분추상 클래스 (Abstract Class)추상 메서드 (Abstract Method)인터페이스 (Interface)정의추상 메서드를 하나 이상 포함하거나 abstract로 선언된 클래스구현부 없이 선언만 있는 메서드추상 메서드와 상수만으로 구성된 형태목적관련 있는 클래스들의 공통적인 특징을 추출하고 상속을 통해 재사용성 증가하위 클래스에서 반드시 구현해야 할 메서드 명세 정의관련 없는 클래스들이 특정 기능을 공유하도록 함관계IS-A 관계 (상속 관계)IS-A 관계 (상속 관계)HAS-A 관계 (구현 관계)구현추상 메서드는 하위 클래스에서 반드시 구현해야 함하위 클래스에서 반드시 구현해야 함인터페이스를 구현하는 클래스에서 추상 메서드 구현해야 함메서드 종류- 추상 메서드- 일반 메서드- 생성자추상 메서..

용어/java 2024.06.02

[국비][JAVA] 메서드 오버로딩, 오버라이딩 차이

메서드 오버로딩메서드 오버라이딩- 동일 클래스 내 메서드 이름을 같게 선언- 매개변수의 개수, 타입, 순서가 다를 시 적용- 반환 타입이 달라도 오버로딩으로 간주되지 않음 - 컴파일 타임에 어떤 메서드가 호출될지 결정됨- 상속 관계에서 발생- 부모 클래스의 메서드를 자식 클래스에서 재정의- 메서드의 이름, 매개변수, 반환 타입이 동일- 다형성을 실현하여 런타임에 객체의 타입에 따라 적절한   메서드를 호출할 수 있음 [메서드 오버로딩 예시 코드]class MathUtils { // 매개변수의 개수가 다른 경우 int add(int a, int b) { return a + b; } // 매개변수의 타입이 다른 경우 double add(double a, double b..

용어/java 2024.05.30

[국비][JAVA] 참조값 및 객체 이해하기_예시

▶ 기본형 / 참조형 이해https://zoooom-in.tistory.com/45 [김영한_자바기본][2.기본형과 참조형] 기본형 / 참조형 이해 (p.1-6)참조값에 접근한다는 것은 설계도와 부지 위치에 접근해서 같이 공동 작업을 하는 것이다. 기본형은 실제 값이 저장되어 독립적으로 관리되지만, 참조형은 변수에는 객체 위치(참조값)가 저장zoooom-in.tistory.com ▶ 기본형 / 참조형 - 메서드에 객체 반환https://zoooom-in.tistory.com/66 [김영한_자바기본][2. 기본형과 참조형] (보충) 메서드에 객체 전달 / 메서드에서 객체 반환 / NullPo▶ 1. 클래스와 데이터 : 클래스 생성 + 클래스의 이해 https://zoooom-in.tistory.com/65..

용어/java 2024.05.30

[국비][JAVA] 배열 이해 및 기본형, 참조형 기본 값

[배열 선언]int[] ar = new int[3];- 크기가 3인 int 배열을 선언하고, 초기화- int형이 아닌 int형 배열이라고 부름 [메모리 구조 상]스택 영역힙 영역- ar 변수 자체는 스택 메모리에 저장- ar 변수 자체는 배열의 주소값(참조값)을 가지고 있음- new int[3]은 힙 메모리에 저장-  메모리에는 세 개의 int 값이 저장될 공간이 할당됨    (4byte) [인스턴스 변수 기본값]public class Example { int num; // 기본값 0 String str; // 기본값 null int[] array = new int[3]; // 각 요소는 기본값 0} >> 메모리 구조상 [기본형 기본값]public class Primitive { p..

용어/java 2024.05.28