포스팅에 앞서 내용이 틀릴 수 있습니다. 해당 부분 지적 감사히 받습니다. 이번시간엔 와일드카드에 대해 배워보자. 우선 와일드카드는 단독으로 사용될 순 없다. 이전 시간에 배운 제네릭 타입(제네릭 클래스)을 더 유연하고 간결하게 쓸 수 있게끔 도와주는 역할을 한다. 그러면 제네릭 메서드랑 와일드카드와의 차이점을 알아보자.static T printAndReturnGeneric(Box box){ T t = box.get(); System.out.println("이름 = " + t.getName()); return t;} //제네릭 메서드static Animal printAndReturnWildCard(Box box){ Animal animal = box.get(); System...
포스팅에 앞서 내용이 틀릴 수 있습니다. 해당 부분 지적 감사히 받습니다. 제네릭 메서드에 대해 알아보자. 이전 시간엔 제네릭 클래스에 대해 알아보았다. 제네릭 클래스를 통해 여러 객체의 타입을 하나의 클래스로 처리할 수 있었다. 제네릭 메서드 또한 마찬가지이다. 하나의 메서드로 여러가지 타입의 데이터를 처리해 줄 수 있다. public class Main { public static void main(String[] args) { Integer[] intArray = {1, 2, 3, 4, 5}; String[] strArray = {"Hello", "World"}; // 제네릭 메서드 호출 GenericMethodExample.printArray..
포스팅에 앞서 내용이 틀릴 수 있습니다. 해당 부분 지적 감사히 받습니다. 제네릭에 대해 알아보자. Generic :일반적인 제네릭은 일반적인 이라는 뜻을 가진 단어이다. 우리는 여태 메서드에 변수만을 넘겨줬었다. 하지만 제네릭을 사용하면 타입 또한 넘겨줄 수 있다. 즉, 하나의 메서드로 여러 타입을 넘겨줄 수 있게 된다. 이를 통해 코드 재사용성, 타입 안정성을 챙길 수 있다. 사용법을 알아보자. Generic Classpublic class GenericBox { private T value; public GenericBox(T value) { this.value = value; } public T getValue() { return value; ..
포스팅에 앞서 내용이 틀릴 수 있습니다. 해당 부분 지적 감사히 받습니다. 자바에서 프로그램 로직을 짜다가 만약 문제가 생기면 어떻게 될까? 문제의 종류에 따라 다르겠지만, 자바는 이럴 때 오류를 내뱉으며 즉시 프로그램을 종료한다. 물론 자바뿐만 아니라 다른 프로그래밍 언어들 또한 그렇다. 자바에서는 예외처리를 통해 해당 프로그램의 오류 흐름에서 다시 정상 흐름으로 바꿀 수 있게 해 준다. 이 과정을 예외처리라고 한다. 또한.. 예외처리를 함으로써, 개발자가 코드를 읽을 때, 정상 흐름과 오류 흐름을 나눠 볼 수 있음으로, 가독성 또한 챙겨갈 수 있다. 일단 예외처리에 사용되는 키워드를 알아보자. try : try뒤에 중괄호가 나오며, 이 지역에서 발생하는 예외를 탐색한다.catch : try 지역 끝에..
포스팅에 앞서 내용이 틀릴 수 있습니다. 해당 부분 지적 감사히 받습니다. 이전시간에는 중첩, 내부 클래스에 대해 배웠다. 원래 익명클래스도 한 번에 다뤘어야 했는데, 피곤해서 나눴다. 익명클래스는 지역 클래스의 종류이다. 근데 이름이 없다. 그래서 생성할 때 딱 한 번만 해당 클래스의 인스턴스를 만들 수 있다. 그리고 선언과 동시에 내부를 구현한다. 또 기본생성자만 가지며 반드시 부모클래스 혹은 인터페이스가 있어야 만들 수 있다. 코드예제를 보자. 인터페이스public interface Printer { void print();} 익명 클래스Printer printer = new Printer() { int value = 0; @Override public void print()..

포스팅에 앞서 내용이 틀릴 수 있습니다. 해당 부분 지적 감사히 받습니다. 중첩 클래스와 내부 클래스에 대해 알아보자. 중첩 클래스와 내부 클래스는, 클래스 내부에 구현되어 있는 또 다른 클래스이다. 즉 메서드와 같이 외부 클래스의 하나의 요소가 되는 것이다. 다만 정적 중첩 클래스는 예외다. 정적 중첩 클래스는 static이 붙으며 이는 컴파일 시 메서드 영역에 생성된다. 따라서 구조상 외부 클래스의 내부에 선언되어 있지만, 둘 사이의 관계는 없다. 다만 정적 중첩 클래스는 외부 클래스와 위치가 같기에, 외부 클래스의 private 요소에 접근할 수 있는 차이점이 하나 존재한다. 하지만 static의 성질이기에, 정적 중첩 클래스 내부에 외부의 클래스 객체를 생성하여야 해당 private인스턴스로 접..
포스팅에 앞서 내용이 틀릴 수 있습니다. 해당 부분 지적 감사히 받습니다. 이번에는 타입 안전 열거형 + Enum에 대해 알아보자. 자바에서는 if문을 사용하거나 switch문을 사용하여 케이스 별로 처리할 일이 정말 많다. 하지만 이곳에 숫자의 범위가 아닌 문자열을 통해 케이스를 나누는 경우도 존재할 것이다. 하지만 개발자가 개발 중 문자에 오타를 내, if문을 정상적으로 타지 않게 될 경우가 있을 수 있다. 물론 꼼꼼히 개발하면 일어나지 않을 문제 이긴 하지만, 그래도 사람이기에 실수가능성을 배제할 순 없다. 이런 문제를 컴파일 단에서 점검하고, 방지하기 위해 자바는 Enum Class를 제공한다. 그렇다면 Enum Class의 역할이 무엇일지 소스코드를 보며 먼저 생각해 보자.public class..
포스팅에 앞서 내용이 틀릴 수 있습니다. 해당 부분 지적 감사히 받습니다. 래퍼 클래스에 대해 알아보자. 래퍼 클래스 : 기본형 타입을 객체로 변환한 클래스 자바에서 int는 기본형이다. 기본형은 객체에 비해 한계가 명확하다. 1. 메서드를 제공할 수 없다. 2. 값없음(Null)을 사용할 수 없다. 자바에서는 null이 객체에만 들어갈 수 있다. 따라서 가끔 int 타입에도 값없음이 필요할 때가 있는데, 이를 해결하기 위해 Wrapper Class라는 것이 존재한다. Wrapper Class라는 이름에서도 알 수 있듯이 Class이며 객체로 생성된다. 자바에서는 기본적으로 Wrapper Class를 제공한다. Character() Boolean() Integer() -> 추가로 -128 ~127을 St..
- Total
- Today
- Yesterday
- extends
- 스프링
- 김영한 실전 자바 중급
- 김영한 실전 자바 기본
- spring
- 프로그래머스 상품을 구매한 회원 비율 구하기
- 김영한
- 백준
- webhacking.kr
- 프로그래머스
- 자바
- 코딩테스트 준비
- 상속
- 프로그래머스 상품을 구매한 회원 비율 구하기 파이썬
- static
- Los
- 기술스택
- 상품을 구매한 회원 비율 구하기 파이썬
- ys.k
- samron
- 백준 피보나치 수열
- zixem
- samron3
- lord of sql
- los 15단계
- 백준 피보나치
- los 15
- java
- 코딩테스트
- 김영한 실전 자바 기초
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |