목록java (45)
Welcome! Everything is fine.
인프런 강의 을 보고 정리한 내용입니다.매주 모여 각자 정리한 내용을 기반으로 발표하고 질문 공유하는 스터디입니다.📘String 클래스String 클래스란?String 클래스 : 문자열을 편리하게 다룰 수 있는 클래스. 직접 char[]에 문자를 하나하나 넣어서 문자를 다루는 것은 불편하기 때문에 String 클래스를 제공해 더 편리하게 문자열을 사용할 수 있다.String 클래스에서 문자열을 생성하는 방법에 1) 쌍따옴표를 사용하거나, 2) 객체를 생성하는 방법이 있다. String은 클래스, 즉 참조형이기 때문에 참조값만 들어갈 수 있다. 그러나 문자열은 매우 자주 사용되기 때문에 자바에서는 1)번 방법을 사용하더라도 2)번으로 변경해준다. 같은 이유로, 참조형이지만 편의상 + 연산을 사용할 수 있..
인프런 강의 을 보고 정리한 내용입니다.매주 모여 각자 정리한 내용을 기반으로 발표하고 질문 공유하는 스터디입니다. 📘Object 클래스Object 클래스란자바가 제공하는 라이브러리 중 자바 언어를 이루는 가장 기본이 되는 클래스들을 보관하는 java.lang 패키지가 있다. java.lang 패키지는 모든 자바 애플리케이션에 자동으로 import 된다. ✔️ java.lang 패키지의 대표적인 클래스Object : 모든 자바 객체의 부모 클래스String : 문자열Integer, Long, Double : 래퍼 타입, 기본형 데이터 타입을 객체로 만든 것Class : 클래스 메타 정보System : 시스템과 관련된 기본 기능들을 제공이 중에서도 모든 클래스의 최상위 부모 클래스인 Object 클래스..
자바에서 두 객체가 같다는걸 확인할 때, 두 가지로 표현할 수 있다는 것을 배웠다.동일성(Identity) : == 연산자 이용, 두 객체의 참조가 동일한 객체를 가리키는지 확인동등성(Equality) : equals() 메서드 이용, 두 객체가 논리적으로 동등한지 확인강의를 보며 예제 코드로 실습을 하다가 이해가 가지 않는 부분이 있었다. User 객체를 생성해 동일성, 동등성 비교를 할 때, 모두 false가 출력된 것이다. 그리고 Object가 기본적으로 제공하는 equals()는 == 으로 동일성 비교를 제공한다는 것이었다. 그래서 '그럼 왜 euqlas()'라는 메서드를 만든거지? 라는 생각이 들었다. User user1 = new User("id-100"); User user2 = new U..
Git & GitHubGit : 분산형 버전 관리 시스템, 파일 변경 이력을 로컬 저장소에 저장 / 관리GitHub : Git을 쉽게 사용할 수 있도록 Git 저장소를 원격으로 호스팅 해주는 웹 기반 플랫폼즉, Git은 코드의 버전 관리를 담당하고 GitHub는 이를 기반으로 협업과 공유를 가능하게 하는 온라인 서비스이다.Git 명령어✔️ git --version : Git의 버전 확인✔️ git clone [원격_저장소_주소] : 원격 저장소 복제해 지역 저장소 생성✔️ git remote -v : 원격 저장소 조회✔️ git add [file] : 이력 관리 대상 파일 지정✔️git add * 혹은 git add . : 모든 파일을 이력 관리 대상으로 지정✔️ git commit -m "[커밋_메시지..
인프런 강의 을 보고 정리한 내용입니다.매주 모여 각자 정리한 내용을 기반으로 발표하고 질문 공유하는 스터디입니다.다형성(Polymorphism)객체 지향 프로그래밍의 특징 중 하나인 다형성은 한 객체가 여러 타입의 객체로 취급될 수 있는 능력을 의미한다.다형성을 이해하기 위해서 알아야 할 2가지는 다음과 같다.다형적 참조메서드 오버라이딩다형적 참조는 부모 타입이 자신은 물론 모든 자식 타입을 참조할 수 있는 것을 말한다. 다음 예시를 보자.public class Parent { public void parentMethod() { System.out.println("Parent.parentMethod"); }} 다음 Child 클래스는 Parent 클래스를 오버라이딩하고 있다.pu..
인프런 강의 을 보고 정리한 내용입니다.매주 모여 각자 정리한 내용을 기반으로 발표하고 질문 공유하는 스터디입니다. 자바 메모리 구조와 static자바 메모리 구조메서드 영역✔️ 메서드 영역 : 프로그램을 실행하는데 필요한 공통 데이터를 관리하는 영역으로, 해당 데이터는 프로그램의 모든 영역에서 공유한다.스택 영역 ✔️ 스택 영역 : 실제 프로그램이 실행되는 영역스택 영역에 대해 공부하기 전, 스택의 개념에 대해 알아야 한다. 스택 자료구조는 익숙하기 때문에 여기서 또 정리하진 않고 내가 이전에 정리한 내용을 아래 더보기에 올려두었다.더보기 #11. Stack과 Queue의 차이스택(Stack)스택은 한쪽 끝에서만 데이터를 넣고 뺄 수 있는 자료구조이다. 다시 말해 후입선출(LIFO, Last-In-F..
인프런 강의 을 보고 정리한 내용입니다.매주 모여 각자 정리한 내용을 기반으로 발표하고 질문 공유하는 스터디입니다. 생성자생성자(Constructor)란 객체를 생성한 직후 초기화하기 위한 특별한 메서드이다. 생성자 대신 따로 메서드를 만들어서 초기화할 수도 있지만, 초기화하는 과정을 누락할 수도 있고 번거롭기 때문에 생성자를 사용한다. 생성자와 메서드 비교?클래스명과 같은 이름을 사용하기 때문에 대문자로 시작한다.생성자는 반환 타입이 없다.나머지는 메서드와 같다.생성자도 메서드 오버로딩처럼 여러개 정의할 수 있다. (여러개일 경우 하나만 호출하면 된다.)다음은 생성자를 사용한 예시이다. 멤버 변수와 매개변수의 이름이 다르면 this를 생략할 수 있지만, 멤버 변수와 매개변수의 이름이 같으면 this를..
인프런 강의 을 보고 정리한 내용입니다.매주 모여 각자 정리한 내용을 기반으로 발표하고 질문 공유하는 스터디입니다.클래스와 데이터클래스 : 객체를 생성하기 위한 설계도로서 객체가 가져야 할 속성(변수)과 기능(메서드)을 정의한다.객체 : 클래스에서 정의한 속성과 기능을 가진 실체학생의 이름, 나이, 성적을 저장하고 출력하려고 할 때 다음과 같이 간단하게 만들 수 있다. 만약 학생이 영원히 2명뿐이라면 이렇게 만들어도 그렇게 불편하진 않을 것이다. 하지만 학생이 늘어난다면 변수도 추가로 선언하고 출력하는 코드도 더 추가해야 한다. 학생이 1000명이라면 여기서 998명을 더 추가하고 그만큼의 출력 코드도 짜야한다는 것이다. 이런 코드의 변경을 최소화하하기 위해서는 배열을 사용할 수 있지만 수정 시 실수할 ..