본문 바로가기
반응형

언어공부/JAVA&SPRING67

[패스트캠퍼스 수강 후기] 자바 인강 100% 환급 챌린지 13회차 미션 오늘은 객체배열에 대해서 공부해보았다. 기본자료형 배열과 참조자료형 배열의 형태는 아래와 같다. 예시로 Book이라는 객체가 들어갈 객체배열을 만들어 보았다. 객체배열을 복사할 때 아래와 같이 얕은복사와 깊은 복사가 있다. 객체를 배열로 다루기 ​ 부모타입의 참조변수로 자녀타입의 객체를 참조하는 것이 가능하다는 것을 지난 시간에 배워 알고 있을것이다. Car(부모클래스) / Supercar(자녀클래스) 라면, Car c = new Supercar(); 또는 Car c = null; Supercar sc = new SuperCar(); c = sc; 방법이 있었다. ​ 이번 시간엔 이러한 점을 이용해서 부모타입의 참조변수로 자녀타입 객체를 배열로 다루는 방법을 알아보겠다. ​ 부모 클래스로 Juice가 있.. 2020. 8. 22.
[패스트캠퍼스 수강 후기] 자바 인강 100% 환급 챌린지 12회차 미션 오늘은 Static 변수와 Singleton에 대해 알아보았다. Static변수는 처음 프로그램이 로드 될 때 데이터 영역에 생성된다. 인스턴스의 생성과 상관없이 사용할 수 있기때문에 클래스 이름으로 참조한다. 클래스변수, 정적변수라고도 한다. 프로그램에서 변수의 유형은 아래와 같이 세가지 종류가 있다. 지역변수(로컬변수)는 함수 내부에 선언되며, 멤버변수(인스턴스 변수)는 클래스 멤버 변수로 선언한다, Static 변수(클래스 변수)는 static 예약어를 사용하여 클래스 내부에 선언한다. 싱글턴 패턴에 대해서도 알아보았다. 생성자는 private으로 하며 static으로 유일한 객체를 생성한다. 외부에서 유일한 객체를 참조할 수 있는 public static get()메서드를 구현한다. ☞ 싱글톤 클.. 2020. 8. 21.
[패스트캠퍼스 수강 후기] 자바 인강 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.
[패스트캠퍼스 수강 후기] 자바 인강 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.
반응형