본문 바로가기

분류 전체보기38

자바 this / this() 뜻, 의미, 사용방법에 대해서 안녕하세요, 스코리아입니다. 오늘은 자바의 this, this()의 차이점과 의미(뜻)를 알아보고, 어떻게 사용하는지 사용 방법을 예제와 함께 알아보겠습니다. this 의미(뜻)? this를 단어의 어원적인 측면으로 본다면, '이것'이라고 해석합니다. 자바에서는 '인스턴스 자신의 메모리'를 가리키는 키워드입니다. 아래 그림과 같이 생성된 인스턴스의 메모리 주소를 가집니다. 클래스 내에서 참조 변수가 가지는 주소값과 동일한 주소값을 가지는 키워드입니다. this와 this()의 차이점과 사용방법 this는 this.매개변수 형태로 사용이 가능합니다. 매개변수와 객체 자신이 가지고 있는 변수의 이름이 같은 경우 이를 구분하기 위해 this를 붙입니다. 예를 들어 아래 코드를 보면 this.month = mo.. 2023. 8. 15.
자바 접근 제어 지시자와 정보은닉을 활용한 캡슐화 (객체지향) 안녕하세요. 스코리아입니다. 오늘은 자바의 접근 제어 지시자와 정보은닉을 활용한 캡슐화에 대해서 알아보겠습니다. 자바의 객체지향에서 매우 중요한 부분 중 하나가 바로 '정보은닉'입니다. 접근 제어 지시자 (Access Modifier) 클래스 외부에서 클래스의 멤버 변수, 메소드, 생성자를 사용할 수 있는지 여부를 지정하는 키워드 이 키워드는 멤버 변수, 메소드, 생성자의 타입값 (void, int, float..) 앞에 옴. 예를 들면 public int month; public : 클래스의 외부 어디에서나 접근 가능 private: 같은 클래스 내부에서만 접근 가능 (외부 클래스, 상속 관계의 클래스 접근 불가) protected: 같은 패키지나 상속 관계의 클래스에서 접근 가능 (그 외 외부에서는 .. 2023. 8. 14.
[프로그래머스] 다리를 지나는 트럭 문제 (Java Queue 풀이) 안녕하세요, 스코리아입니다. 오늘은 자바(Java)의 Queue를 이용한 프로그래머스 Lv.2 다리를 지나는 트럭 문제를 풀어보겠습니다. 문제가 Queue를 사용하기에 너무 적합하고 깔끔한 문제라 가져와 보았습니다. 문제 설명 https://school.programmers.co.kr/learn/courses/30/lessons/42583 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 트럭은 한 번에 1만큼의 거리를 이동할 수 있습니다. 즉, 트럭 한 대가 길이 bridge_length의 다리를 건너기 위해서는 bridge_length만큼의 시간이 필요합.. 2023. 8. 13.
자바 참조 자료형 변수 정의하기, 사용 방법 (feat. 객체) 안녕하세요. 스코리아입니다. 오늘은 자바 참조 자료형 변수를 정의하여 사용하는 방법에 대해서 알아보겠습니다. 그전에 자바의 기본형 타입과 참조형 타입의 차이를 알고 계시나요? 모르고 계신다면 이 포스팅을 읽기 전에, 제가 이전에 작성했던 내용을 꼭 참고해 보시기 바랍니다! [이전 내용] 자바 기본형 타입 vs 참조형 타입 차이점 정리 https://skorea6.tistory.com/8 참조 자료형 변수의 자료형은 두 가지로 나뉩니다. 기본 자료형(기본형 타입)에는 int, long, float, double 등이 존재하고 참조 자료형(참조형 타입)에는 기본형을 제외한 모든 것이 해당됩니다. 예를 들면 String, Date, Student(객체) 등이 존재합니다. 참조 자료형은 클래스 형으로 변수를 선.. 2023. 8. 12.
자바 기본형 타입 vs 참조형 타입 차이점 정리 안녕하세요. 스코리아입니다. 오늘은 자바 기본형 타입과 참조형 타입이 어떻게 다른지, 차이점에 대해서 정리해 보겠습니다. 자바를 공부하면서 참조형 타입은 꼭 알아야 할 주제 중 하나라고 생각합니다. 자바의 클래스, 인터페이스, 객체는 배우고 써왔는데, 참조형 타입과 기본형 타입의 차이를 모르고 있으면 안 됩니다:) 각각의 특징을 이해하고 정리해 보는 시간을 가져보겠습니다! 기본형 타입 vs 참조형 타입 기본형 타입 (Primitive Type) 기본형 타입에는 크게 정수형(byte, short, int, long), 실수형(float, double), 문자형(char), 논리형(boolean) 이 존재합니다. 객체 타입이 아니므로, null 값을 가질 수 없습니다. (다만, 기본값은 존재) 모든 값 타입.. 2023. 8. 11.
자바 생성자 의미와 구현, 그리고 생성자 오버로딩 뜻? 안녕하세요. 스코리아입니다. 오늘은 자바의 생성자 의미를 파악하고 구현해 본 뒤, 생성자 오버로딩이 무엇인지 알아보겠습니다. 생성자 (constructor)란? 생성자 의미: 인스턴스가 생성될때 호출되는 인스턴스 초기화 메소드 생성자 용도: 객체가 생성될 때 변수나 상수를 초기화하거나 다른 초기화 기능을 수행하는 메소드를 호출 생성자 호출 방법 : 객체를 생성할 때 new 키워드와 함께 사용 - 예를 들면 new Student() 생성자 기본 문법: ([]){[] 생성자를 만들 때 주의할 점 생성자는 반환 값이 없음 생성자는 클래스의 이름과 동일해야 함 대부분의 생성자는 외부에서 접근 가능하지만, 필요에 의해 private로 선언해야 하는 경우도 있음 기본 생성자 (default constructor)란.. 2023. 8. 10.
자바 메소드 의미, 인스턴스 생성과 힙메모리란? (feat. 객체) 안녕하세요 스코리아입니다. 자바의 메소드와 인스턴스, 힙메모리를 공부하기 전에 이전 시간에 설명드렸던 '객체지향적 프로그래밍'과 '함수의 스택 메모리 구조'를 꼭 이해하고 오시길 추천드립니다! [이전 내용] 객체지향적 프로그래밍: https://skorea6.tistory.com/3 [이전 내용] 함수의 스택 메모리 구조: https://skorea6.tistory.com/4 시작하기 앞서, TMI 하나만 하겠습니다.. 글의 제목을 생각하던 와중에, 메소드 vs 메서드? 뭐가 맞는가에 대해서 한참 고민했습니다. 구글 서칭 결과, Method의 한글 표기법은 '메서드'가 더 정확한 표현이라고 하네요:) 다만, 사람들은 '메서드'보다 '메소드'라고 더 많이 쓰는 것 같아서, 앞으로 '메소드'로 명칭 하여 설.. 2023. 8. 9.
인프콘 2023 티켓 당첨! 경쟁률부터 기대되는 발표세션들은? 안녕하세요 스코리아입니다. 이번에 운 좋게 인프콘 2023 티켓에 당첨되어, 참가할 수 있게 되었습니다. 인프콘은 인프런에서 주최하는 개발자 컨퍼런스입니다. 인프런이라는 플랫폼을 알게 된 건 2020년쯤이었습니다. 자바 스프링을 공부하기 위해 좋은 동영상 강의를 찾게 되다가 우연히 인프런을 발견했고, 김영한 강사님을 만나게 되었습니다. 그렇게 지금까지 완강한 김영한 님 강의만 9개 정도 되는 것 같습니다 ㅎㅎ 인프콘 행사정보 일시: 2023년 8월 15일 (화) 10:00 ~ 18:00 (9:00부터 입장 가능하다고 하네요!) 장소: 삼성동 COEX 그랜드볼륨 및 아셈볼륨 현재 인프콘 2023 티켓 신청 기간은 종료되었습니다. 2023년 7월 10일 13시부터 7월 14일 00시까지 신청을 받았고, 그중.. 2023. 8. 8.
자바 함수 정의, 호출 방법과 스택 메모리란? 안녕하세요. 스코리아입니다. 자바를 공부하다 보면 함수, 메서드, 인스턴스, 멤버변수(인스턴스변수), 매개변수, 객체 등 다양한 용어를 접하게 됩니다. 각각의 정의를 명확하게 알고 어떤 경우에 사용하는지 파악하면, 보다 쉽게 코딩이 가능합니다. 오늘은 함수에 대해서 자세히 알아보겠습니다. 우선, 함수 (Function)란 무엇일까요? 하나의 기능을 수행하는 일련의 코드 구현된(정의된) 함수는 호출하여 사용하고 호출된 함수는 기능이 끝나면 제어가 반환됨 (반환되는 값이 있을 수도 있고 없을 수도 있음) 함수로 구현된 하나의 기능은 여러 곳에서 동일한 방식으로 호출되어 사용할 수 있음 이제 함수를 정의해 봅시다! 함수는 이름, 매개 변수, 반환 값, 실행되는 몸체로 구성됩니다. 예를 들면, n1과 n2를 더.. 2023. 8. 7.