본문 바로가기
반응형

패스트캠퍼스47

[패스트캠퍼스 수강 후기] 자바 인강 100% 환급 챌린지 20회차 미션 오늘은 자바 입출력 스트림과 표준 입출력에 대해서 공부해보았다. 입출력 스트림이란 네트워크에서 자료의 흐름이 물과 같다는 의미에서 유래되었다. 다양한 입출력 장치에 독립적으로 일관성 있는 입출력 방식을 제공해준다. 입출력이 구현 되는 곳에서는 모두 I/O 스트림을 사용한다. 예를들면 키보드, 파일 디스크, 메모리 등이다. 입출력 스트림의 구분으로는 I/O 대상 기준 : 입력 스트림, 출력 스트림 자료의 종류: 바이트 스트림, 문자 스트림 스트림의 기능: 기반 스트림, 보조 스트림 이 있다. 입력 스트림은 대상으로부터 자료를 읽어들이는 스트림을 말하며, 출력 스트림은 대상으로 자료를 출력하는 스트림을 말한다. 바이트 단위 스트림은 바이트 단위로 자료를 읽고 쓴다. (동영상, 음악파일 등) 문자 단위 스트림.. 2020. 8. 29.
[패스트캠퍼스 수강 후기] 자바 인강 100% 환급 챌린지 18회차 미션 오늘은 람다식에 대해 공부해보았다. 함수형 프로그래밍은 순수 함수(pure function)를 구현하고 호출하며 매개변수만을 사용하도록 만든 함수로 외부자료에 부수적인 영향이 발생하지 않도록 한다. 입력받은 자료를 기반으로 수행되고 외부에 영향을 미치지 않으므로 병렬처리 등에 가능한 안정적인 확장성 있는 프로그래밍 방식이다. 람다식 문법은 매개변수 하나인 경우 괄호를 생략 가능하다. (두개 인 경우는 괄호를 생략할 수 없다.) str->{System.out.println(str);} 중괄호 안의 구현부가 한 문장인 경우 중괄호 생략이 가능하다. str->System.out.println(str); 중괄호 안의 구현부가 한 문장이라도 return문은 중괄호를 생략할 수 없다. str->return str... 2020. 8. 27.
[패스트캠퍼스 수강 후기] 자바 인강 100% 환급 챌린지 17회차 미션 오늘은 TreeMap클래스와 내부클래스에 대해 공부해보았다. TreeMap 클래스는 key 객체를 정렬하여 key-value를 pair로 관리하는 클래스이다. key에 사용되는 클래스에 Comparable, Comparator 인터페이스를 구현한다. java에 많은 클래스들은 이미 Comparable이 구현되어있다. 구현된 클래스를 key로 사용하는 경우는 구현할 필요 없다. 아래는 HashMap을 만드는 과정. 아래는 TreeMap으로 변환한 것. 정렬이 잘 되는 것을 볼 수 있다. Map 인터페이스는 쌍으로 이루어진 객체를 관리하는데 필요한 여러 메서드가 선언되어 있으며 Map을 사용하는 객체는 key-value 쌍으로 되어있고 key 는 중복될 수 없다. 내부 클래스란 클래스 내부에 구현된 클래스(.. 2020. 8. 26.
[패스트캠퍼스 수강 후기] 자바 인강 100% 환급 챌린지 16회차 미션 오늘은 Set 인터페이스에 대해 공부해보았다. Set 인터페이스는 Collection 하위의 인터페이스로 중복을 허용하지 않는다. List는 순서기반의 인터페이스지만, Set은 순서가 없다. get(i) 메서드가 제공되지 않기 때문에 Iterator로 순회한다. 저장된 순서와 출력순서는 다를 수 있다. 아이디, 주민번호, 사번 등 유일한 값이나 객체를 관리할 때 사용한다. HashSet, TreeSet 클래스를 예로 들 수 있다. 아래는 HashSet을 순차적으로 추출하기 위해 iterator 를 사용한 코드이다. 아래는 HashSet을 만들고 멤버를 추가하는 addMemeber 메서드와 removeMemeber를 만든 코드이다. 아래는 manager 라는 이름의 MemberHashSet 객체에 멤버들을.. 2020. 8. 25.
[패스트캠퍼스 수강 후기] 자바 인강 100% 환급 챌린지 15회차 미션 오늘은 List 인터페이스 및 Stack과 Queue에 대해서 공부해보았다. ArrayList와 Vector는 객체 배열 클래스이다. Vector는 자바 2부터 제공된 클래스라고 하는데, 학원에서도 배우지 않아서 생소하다. 일반적으로는 ArrayList를 더 많이 사용한다고 한다. Vector는 멀티 쓰레드 프로그램에서 동기화를 지원한다. 동기화(Synchronization)란 두개의 쓰레드가 동시에 하나의 리소스에 접근할 때 순서를 맞추어서 데이터의 오류가 방지하지 않도록 하는 것이다. capacity와 size는 다른의미이다. Stack은 List In First Out(LIFO)의 형태를 가지고 있다. 즉, 맨 마지막에 추가 된 요소가 가장 먼저 꺼내지는 자료구조이다. 이미 구현된 클래스가 제공된다.. 2020. 8. 24.
[패스트캠퍼스 수강 후기] 자바 인강 100% 환급 챌린지 14회차 미션 오늘은 제네릭 프로그래밍과 컬렉션 프레임워크의 개요에 대해 공부해보았다. 제네릭 프로그래밍이란 변수의 선언이나 메서드의 매개변수를 하나의 참조 자료형이 아닌 여러 자료형을 변환될 수 있도록 프로그래밍 하는 방식이다. 실제 사용되는 참조자료형으로의 변환은 컴파일러가 검증하므로 안정적인 프로그래밍 방식이다. 제네릭 메서드 내에서의 자료형 매개변수는 메서드 내에서만 유효하다. 즉 지역변수와 같은 개념이라고 할 수있다. 컬렉션 인테페이스는 하나의 객체의 관리를 위해 선언된 인터페이스로 필요한 기본메서드가 선언되어 있다. 하위에 List, Set 인터페이스가 있다. 제네릭 프로그래밍 제네릭 프로그래밍(영어: generic programming)은 데이터 형식에 의존하지 않고, 하나의 값이 여러 다른 데이터 타입들.. 2020. 8. 23.
[패스트캠퍼스 수강 후기] 자바 인강 100% 환급 챌린지 13회차 미션 오늘은 객체배열에 대해서 공부해보았다. 기본자료형 배열과 참조자료형 배열의 형태는 아래와 같다. 예시로 Book이라는 객체가 들어갈 객체배열을 만들어 보았다. 객체배열을 복사할 때 아래와 같이 얕은복사와 깊은 복사가 있다. 객체를 배열로 다루기 ​ 부모타입의 참조변수로 자녀타입의 객체를 참조하는 것이 가능하다는 것을 지난 시간에 배워 알고 있을것이다. Car(부모클래스) / Supercar(자녀클래스) 라면, Car c = new Supercar(); 또는 Car c = null; Supercar sc = new SuperCar(); c = sc; 방법이 있었다. ​ 이번 시간엔 이러한 점을 이용해서 부모타입의 참조변수로 자녀타입 객체를 배열로 다루는 방법을 알아보겠다. ​ 부모 클래스로 Juice가 있.. 2020. 8. 22.
[패스트캠퍼스 수강 후기] 자바 인강 100% 환급 챌린지 11회차 미션 오늘은 Class 클래스와 String 클래스, Wrapper에 대해 공부해보았다. Class 라는 이름의 클래스가 있다고 한다. 자바의 모든 클래스와 인터페이스는 컴파일 후 class파일로 생성된다. class클래스는 컴파일된 class파일에서 객체의 정보를 가져올 수 있다. Class 클래스는 컴파일된 class파일에서 객체의 정보를 가져올 수 있다. Class 클래스를 가져오는 방벙은 아래와 같다. forName() 메서드와 동적 로딩에 대해서도 알아보았다. forName()은 Class클래스의 static 메서드이다. 동적 로딩이란 컴파일시에 데이터 타입이 모두 binding 되어 자료형이 로딩(static loading)되는 것이 아니라 실행중에 데이터 타입을 알고 binding 되는 방식이다... 2020. 8. 20.
[패스트캠퍼스 수강 후기] 자바 인강 100% 환급 챌린지 10회차 미션 오늘은 클래스와 객체 중 this에 대해 공부해보았다. this의 역할로는 자신의 메모리를 가리키거나 생성자에서 다른 생성자를 호출하거나 인스턴스 자신의 주소를 반환하는 것이 있다. 자기 자신의 메모리를 가리킬 때는 아래와 같이 쓴다. 다음 강의에서는 객체 간 협력에 대해서도 공부해보았다. 객체 지향 프로그램은 객체를 정의하고 객체간의 협력을 구현한 프로그램이다. 학생이 지하철이나 버스를 타고 학교 가는 과정에서 일어나는 협력을 예로 들 수 있다. 자료출처 :https://blog.naver.com/bitcoding/221449924466 this의 뜻을 정확히 알기 위해서는 먼저 클래스와 인스턴스에 대한 개념을 잘 알고 계셔야 하는데요, 간략히 설명드리면 클래스는 어떠한 객체, 즉 인스턴스를 만들기 위.. 2020. 8. 19.
[패스트캠퍼스 수강 후기] 자바 인강 100% 환급 챌린지 9회차 미션 오늘은 생성자, 생성자 오버로딩, 참조자료형에 대해 공부해보았다. 하나의 클래스에는 반드시 하나 이상의 생성자가 존재해야 한다. 기본생성자는 프로그래머가 구현하지 않은 생성자를 컴파일러가 자동으로 넣어준 것을 말한다. 기본생성자는 매개변수가 없고 구현부가 없다. 클래스에 다른 생성자를 만든 경우, 기본생성자는 제공되지 않으므로 필요시 직접 만들어주어야 한다. 참조 자료형은 클래스형으로 변수를 선언한다. 기본자료형은 사용하는 메모리가 정해져 있지만, 참조자료형은 클래스에 따라 다르다. 기본 생성자 출처: https://ko.wikipedia.org/wiki/%EA%B8%B0%EB%B3%B8_%EC%83%9D%EC%84%B1%EC%9E%90 기본 생성자(default constructor)는 프로그래머가 정.. 2020. 8. 18.
반응형