반응형 자바강의41 [패스트캠퍼스 수강 후기] 자바 인강 100% 환급 챌린지 16회차 미션 오늘은 Set 인터페이스에 대해 공부해보았다. Set 인터페이스는 Collection 하위의 인터페이스로 중복을 허용하지 않는다. List는 순서기반의 인터페이스지만, Set은 순서가 없다. get(i) 메서드가 제공되지 않기 때문에 Iterator로 순회한다. 저장된 순서와 출력순서는 다를 수 있다. 아이디, 주민번호, 사번 등 유일한 값이나 객체를 관리할 때 사용한다. HashSet, TreeSet 클래스를 예로 들 수 있다. 아래는 HashSet을 순차적으로 추출하기 위해 iterator 를 사용한 코드이다. 아래는 HashSet을 만들고 멤버를 추가하는 addMemeber 메서드와 removeMemeber를 만든 코드이다. 아래는 manager 라는 이름의 MemberHashSet 객체에 멤버들을.. 2020. 8. 25. [패스트캠퍼스 수강 후기] 자바 인강 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% 환급 챌린지 8회차 미션 오늘은 인스턴스에 대해 공부해보았다. 인스턴스란 클래스로부터 생성된 객체이며, 힙메모리에 멤버변수의 크기에 따라 메모리가 생성된다. new라는 키워드를 사용하여 여러개의 인스턴스를 생성할 수 있다. 인스턴스를 만드는 방법을 배워보고, 인스턴스가 생성이 될 시 어떤식으로 주소값과 데이터가 생성되는지 그림판에 그려주셨다. 스택영역에는 주소값이 들어가고 힙메모리에 데이터가 생성되어 주소값으로 힙메모리를 참조하는 것. 기억해야 할 새로운 용어가 참 많은 것 같다. 여러번 보면서 익혀야겠다. 그 다음강의에서는 실제로 문제를 보고 코딩해보는 강의였다. 간단한 문제이지만 이런 기본적인것들을 할 때 정확한 개념을 알고서 하는게 참 중요한 것 같다. 객체지향 프로그래밍이란? 프로그램을 어떻게 설계해야 하는지에 대한 일종.. 2020. 8. 17. [패스트캠퍼스 수강 후기] 자바 인강 100% 환급 챌린지 7회차 미션 오늘은 함수와 메서드에 대해 알아보았다. 파이썬을 배울 때는 함수라는 표현을 많이 썼는데, 자바에서는 메서드라는 표현을 많이 쓰는 것 같다. 함수란 하나의 기능을 수행하는 일련의 코드로서 호출하여 사용하고 기능이 수행된 후 값을 반환할 수 있다. 우리가 수학시간에 배웠던 함수를 떠올려보면 쉽다. 오랜만에 보는 함수 그림 입력값을 넣으면 알아서 연산을 하고 출력값을 내준다. 메서드라는 것은 객체의 기능을 구현하기 위해 클래스 내부에 구현되는 함수라고 한다. 메서드를 구현함으로써 객체의 기능이 구현된다. 자바의 경우 함수를 클래스 내부에서 만들어야 하기 때문에 함수라는 표현보다는 메서드라는 표현을 쓰게 되는것 같다. 메서드 구현 시 스택의 처리과정을 그림판으로 그려가면서 설명해주셨다. 메소드 (컴퓨터 프로그.. 2020. 8. 16. [패스트캠퍼스 수강 후기] 자바 인강 100% 환급 챌린지 6회차 미션 오늘은 자바의 객체지향 프로그래밍 개념과 클래스에 대해서 공부해보았다. 객체 지향 프로그래밍은 컴퓨터 프로그램을 명령어의 목록으로 보는 시각에서 벗어나 여러 개의 독립된 단위, 즉 "객체"들의 모임으로 파악하고자 하는 것이다. 각각의 객체는 메시지를 주고받고, 데이터를 처리할 수 있다. 객체 지향 프로그래밍은 프로그램을 유연하고 변경이 용이하게 만들기 때문에 대규모 소프트웨어 개발에 많이 사용된다. 또한 프로그래밍을 더 배우기 쉽게 하고 소프트웨어 개발과 보수를 간편하게 하며, 보다 직관적인 코드 분석을 가능하게 하는 장점을 갖고 있다. 자바의 꽃이 객체지향이라고 하던데, C언어를 안배우고 자바부터 배운 나는 이게 얼마나 편한건지 잘 모르겠다. 하지만 프로젝트를 하면서 만들었던 10개정도의 클래스를 한 .. 2020. 8. 15. [패스트캠퍼스 수강 후기] 자바 인강 100% 환급 챌린지 5회차 미션 오늘은 직렬화(Serialization), 입출력 클래스에 대한 강의를 들어보았다. 학원에서 DB를 배우지 않은 상태에서 자바 프로젝트를 할 때, 이 직렬화를 활용해서 파일로 데이터를 저장하고 불러와서 활용했던 기억이 있다. 그 때 개념은 정확히 모르고 그냥 활용하면서 배워서 아쉬웠는데 오늘 이 강의를 통해서 개념을 한번 더 잡아서 좋았다. 출처 : https://woowabros.github.io/experience/2017/10/17/java-serialize.html 자바의 직렬화 기술에 대한 대한 이야기입니다. 간단한 질문과 답변 형태로 자바 직렬화에 대한 간단한 설명과 직접 프로젝트를 진행하면서 겪은 경험에 대해 이야기해보려 합니다. 자바 직렬화가 무엇(what)인가요?? 자바 직렬화란 자바 시.. 2020. 8. 14. [패스트캠퍼스 수강 후기] 자바 인강 100% 환급 챌린지 4회차 미션 오늘은 정보 은닉, 캡슐화에 대한 강의를 들어보았다. private 접근제어자를 사용하여 선언한 변수를 다른 클래스에서 Getter, Setter를 이용하여 간접적으로 가져와서 쓸 수 있는 방법이다. 캡슐화 출처: https://terms.naver.com/entry.nhn?docId=3532995&cid=58528&categoryId=58528&expCategoryId=58528 '캡슐' 하면 [그림 6-30(a)]와 같은 캡슐로 된 약이 먼저 떠오를 것이다. 캡슐 약 안에는 수많은 알갱이가 들어 있지만 약을 복용할 때는 알갱이 하나하나가 어떤 기능을 하는지 알 수도 없고 알 필요도 없다. 어디가 아플 때 먹는 약인지, 얼마나 먹어야 하는지, 약의 효능은 무엇인지 등만 알고 있으면 된다. 마찬가지로 세.. 2020. 8. 13. [패스트캠퍼스 수강 후기] 자바 인강 100% 환급 챌린지 2회차 미션 학원에서는 1, 2권으로 구성된 자바의 정석이라는 책으로 수업을 했었는데, 강사님께서 앞권은 굉장히 꼼꼼히 진도를 나가주셨고 뒷권을 엄청 스피디하게 대충 훑은 후에 프로젝트를 하게 되었다. 그러다보니 앞권에서 배웠던 기본배열의 형태는 예시도 많이 풀어보고 공부도 꼼꼼히 했었는데, 뒷쪽에서 생소했던 부분인 ArrayList, 자료구조, 지네릭스 등의 내용은 대충 배우고 활용도는 높은 것 같아서 나중에 다시 한번 꼭 복습을 해봐야지 생각했었다. 오늘은 어떤 내용을 공부해볼까 하다가 마침 패스트캠퍼스 강의중에 ArrayList에 대한 내용이 있어서 공부를 해봤다. ArrayList 클래스 : 자바에서 제공되는 객체 배열이 구현된 클래스. 객체배열을 사용하는데 필요한 여러 메서드들이 정의되어 있음. 예시) Ar.. 2020. 8. 11. 이전 1 2 3 4 5 다음 반응형