Java

· Java
클래스란? 드디어 클래스에 대해서 다루게 되었군요. 클래스란 객체를 생성하기 위한 상태와 행동을 정의하는 설계도입니다. C언어를 배우신 분들이라면 배열 다음에 구조체라는 것을 배우게 되죠. 배열은 같은 자료형 여러개의 묶음이라면 구조체는 여러 자료형을 묶어서 사용할 수 있습니다. 클래스 또한 구조체처럼 여러 자료형을 담아서 사용할 수 있고, (상태) 거기에 메서드(행동)까지 정의할 수 있습니다. 필드(멤버 변수) 필드는 해당 클래스의 속성을 나타냅니다. Student 클래스라면 학과 정보, 학번, 이름등이 필드에 넣을 수 있겠죠. 필드에서도 static을 붙이는 경우에는 클래스 변수라고 부르고 일반적인 변수는 인스턴스 변수라고 부릅니다. 2021.03.10 - [Java] - [java] 변수 [java..
· Java
과제 2. LinkedList를 구현하세요. LinkedList에 대해 공부하세요. 정수를 저장하는 ListNode 클래스를 구현하세요. ListNode add(ListNode head, ListNode nodeToAdd, int position)를 구현하세요. ListNode remove(ListNode head, int positionToRemove)를 구현하세요. boolean contains(ListNode head, ListNode nodeTocheck)를 구현하세요. 과제 3. Stack을 구현하세요. int 배열을 사용해서 정수를 저장하는 Stack을 구현하세요. void push(int data)를 구현하세요. int pop()을 구현하세요. 과제 4. 앞서 만든 ListNode를 사용해서..
· Java
Github API를 이용해서 참여자들의 참여율을 계산하는 과제였습니다. 과제 요구사항을 그대로 가져와서 한 번 살펴보겠습니다. github.com/whiteship/live-study/issues/4 4주차 과제: 제어문 · Issue #4 · whiteship/live-study 목표 자바가 제공하는 제어문을 학습하세요. 학습할 것 (필수) 선택문 반복문 과제 (옵션) 과제 0. JUnit 5 학습하세요. 인텔리J, 이클립스, VS Code에서 JUnit 5로 테스트 코드 작성하는 방법에 익숙해 github.com 과제 1. live-study 대시 보드를 만드는 코드를 작성하세요. 깃헙 이슈 1번부터 18번까지 댓글을 순회하며 댓글을 남긴 사용자를 체크 할 것. 참여율을 계산하세요. 총 18회에 중..
· Java
JUnit 5를 이용한 테스트 코드 작성법에 대해서 알아봅시다. JUnit 5는 자바 8 버전 이상부터 지원합니다. 따라서 프로젝트 자바 버전을 확인하고 따라와 주셨으면 합니다. 참고로 해당 포스팅은 김영한님의 스프링 핵심 원리 강의에서 사용하는 예제로 설명합니다. Spring project Spring project를 spring.io에서 직접 만드는 경우 JUnit 5와 관련한 dependency가 자동으로 추가됩니다. 저도 자동으로 설정된 버전을 사용하기에 추가 방법을 따로 설명하지 않겠습니다. 테스트 코드란? 그동안 작성한 코드가 제대로 돌아가는지 검증하기 위해 작성하는 코드들을 테스트 코드라고 부릅니다. 자 클라이언트가 회원 서비스를 통해서 회원 가입을 하면 저장소로 저장되는 일련의 과정을 구현..
· Java
오늘은 제어문의 나머지 파트에 대해서도 다뤄보겠습니다. 제어문의 경우 자바나 C언어나 큰 차이가 없으니 기존에 다른 언어를 익혀두신 분이라면 스무스하게 넘어갈 수 있습니다. 반복문의 경우 동일한 작업을 반복할 때 사용할 수 있습니다. Hello World라는 문장을 100번 출력해야 한다면, 단순하게 출력문을 100번 복사 붙여 넣기로 구현할 수 있습니다만.. 코드도 쓸데없이 길어지므로 비효율적입니다. 이럴 때 반복문을 알고 있다면 손쉽게 100번 출력이 가능해집니다. 반복문들을 먼저 다뤄보겠습니다. for문 for(초기화; 조건식; 증감식){ 수행될 명령들 } for문은 초기화, 조건식, 증감식, 그리고 수행되야할 명령들로 이루어져있습니다. 예를 들어서 총 10번 무엇인가를 출력해야 한다면 다음과 같이..
· Java
자바의 제어문에는 조건문, 반복문 등이 있습니다. 이번 포스팅에서는 조건문에 대해서만 정리해보겠습니다. if문 if.. 영단어를 생각해주세요. 만약 ~한다면의 의미를 품고 있는 단어입니다. 자바 및 다른 프로그래밍 언어에서도 if문은 만약 조건이 충족한다면 함수 블록 내의 명령을 수행하라!로 사용됩니다. 1 2 3 4 5 6 7 8 9 10 11 12 if(조건1) { } else if(조건2) { } else { } cs 만약 조건1이 true라면 if문 블록 내의 명령이 실행이 될 것이고, 조건1은 false인 반면 조건2가 충족될 경우에는 if문 블록은 스킵되며 else if문이 실행됩니다. 조건1가 조건2가 모두 false가 된 경우 else문으로 들어가게 됩니다. 조건에는 저번 시간에 다룬 연산..
· Java
백기선님의 자바 라이브 스터디 3주 차 토픽을 가져왔습니다. 목표 자바가 제공하는 다양한 연산자를 학습하세요. 학습할 것 산술 연산자 비트 연산자 관계 연산자 논리 연산자 instanceof assignment(=) operator 화살표(->) 연산자 3항 연산자 연산자 우선 순위 (optional) Java 13. switch 연산자 산술 연산자 산술 연산자가 무엇일까요?? 산술(算術, 영어: arithmetic)은 수학의 가장 역사 깊은 분야로, 수의 개념이나 수에 대하여 간단한 계산을 하는 방법, 그 성질이나 계산의 법칙 등의 이론적인 방법을 다루는 학문이다. (출처 : 위키백과) 위키에 따르면 산술이라는 용어를 '수에 대해 계산을 하는 것'이라고 표현하고 있습니다. 즉 우리가 생각하는 사칙 연산..
· Java
오늘도 자바 라이브 스터디 2주차 주제에 대해서 포스팅합니다. 배열은 같은 자료형의 데이터를 연속된 공간(메모리)에 저장하기 위한 자료구조입니다. 같은 자료형 변수 묶음을 하나로 다룰 수 있게 됩니다. 이 배열을 어떻게 선언하는지에 대해서 다뤄보겠습니다. 1차 배열 []를 이용해서 이 자료는 배열이다~ 라고 명시해줄 수 있습니다. int a[]; int []a; 정확히는 위의 코드처럼만 사용하시면 단순하게 배열 선언만 한 것이라서 사용은 못하구요. int a[] = new int[5]; 이 코드는 배열 선언과 생성을 동시에 해준 코드입니다. 선언과 생성을 따로따로 해주셔도 되지만 저는 합쳐서 하는 편입니다. 이런 식으로 사용해주셔야 int형 자료 5(대신 사용하고 싶은 사이즈만큼 조절 가능) 개가 들어갈..
· Java
백기선님의 자바 라이브 스터디 2주차 주제 중 '타입 변환, 캐스팅 그리고 타입 프로모션'에 대해서 정리해봅니다. 타입 변환에 대해서는 어렴풋이 알고 있지만 캐스팅, 프로모션이라고 표현하니까 처음 듣는 듯한 느낌이 드는군요. 흔히 알고 있을 용어로 표현하자면 명시적 형변환(캐스팅)과 자동 형변환(프로모션)에 대한 내용입니다. 타입 캐스팅(명시적 형변환) 타입 캐스팅의 경우 데이터 크기가 큰 쪽에서 작은 쪽으로 강제로 변환시킬 때 사용됩니다. 4바이트인 int형에서 1바이트인 byte형으로 바꾸고 싶은 경우가 이에 해당합니다. int a = 3; byte b = (byte)a; 위의 코드처럼 int형 a를 byte형으로 수정하고 싶으면 괄호 치고 타입 이름을 적어 넣으시면 됩니다. 다만 주의할 점이 있는데..
· Java
용어 정의 scope(스코프)와 lifetime(라이프타임) 용어 자체에 대한 설명이 필요하겠네요. 변수의 스코프란 해당 변수를 사용 가능한 범위를 말합니다. 저번에 다룬 값의 범위가 아닌 영역의 범위라고 생각해주세요. 저는 스코프랑 라이프타임이 비슷한 용어라고 생각했는데, 조금 다르더라구요. 라이프타임의 경우 메모리에서 변수가 언제까지 살아있는가에 대한 것을 다룹니다. 변수는 어디에서 어떻게 선언하냐에 따라 스코프가 3가지로 나뉘는데 이에 대해서 알아봅시다. 사실 저는 이전에 변수에 관한 포스팅을 하면서 변수 세 타입에 대해서 다룬 적이 있습니다. 그래서 이번에는 스코프와 라이프타임 위주로만 정리해보겠습니다. 2021.03.10 - [Java] - [java] 변수 Instance variable 클래..
moongomi
'Java' 태그의 글 목록 (2 Page)