java
🪁 Calculator를 통해 배우는 Static Method & Instance Method
Calculator를 통해 배우는 Static Method & Instance Method 목적 다음과 같은 Java 코드를 통해 step by step으로 코드를 보완해보고자 한다. Static Method & Instance Method에 대한 이해를 높이고자 한다. package com.mins.oop.ex00; public class UnderstandMethod { public static void main(String[] args) { // 다음 식을 연산자 우선 순위를 고려하지 않고 순서대로 계산하라! // 2 + 3 - 1 * 7 / 3 = ? int result = 0; // 메서드를 호출하여 작업을 수행하고, // 리턴 결과는 로컬 변수에 저장한다. result = plus(2, 3);..
⌨️ Compile & OS
기계어와 OS 혹시 당신의 소스파일이 다른 데스크탑이나 노트북에서 열리지 않은 경우가 있나요? 그렇다면 2가지를 고려해볼 필요가 있습니다. OS의 일치여부 각 OS(Windows, Mac OS, Linux)에 따라 기계어 배치방법이 다르다. CPU의 일치여부 CPU마다 기계어에 대한 규칙이 다르다. 호환이 되는 CPU는 잘 동작한다. 📌 OS는 다르고 CPU는 같은경우는? 소스파일은 각 OS에 맞는 컴파일러를 통해 컴파일된다. Windows용 컴파일러로 컴파일 하였기 때문에 다른 OS에서 열 수 없다. CPU가 같아도 이미 OS에서부터 접근이 막혀버리기 때문이다. 📌 OS는 같고 CPU가 다른경우는? 같은 Windows 컴파일러를 통해 컴파일 하였다면 OS까지는 괜찮으나 CPU의 호환여부에 따라 실행될 ..
[Algorithm] 짝수 개수 구하기
짝수 개수 구하기 주어진 숫자에 짝수가 몇 개인지 세어라. 예) 1010 => 2 123 => 1 출제의도 나머지연산자(%) - 2로 나누면 짝수, 홀수 판별이 가능하다. 몫 연산자(/) - 10으로 나누면 나머지를 제외한 숫자를 알 수 있다. public class CountEvenNum { static int countEvenNumber(int value) { // 1) 짝수의 갯수를 담을 변수를 선언한다. (count) // 2) 파라미터로 들어온 값을 담을 변수를 선언한다.(num) // 3) 반복문을 돌면서 0이 아닐 때까지 돌린다. (while) // 4) 조건문을 사용해서 짝수면 카운트업시킨다. (if/%) // 5) 반복문이 끝나면 결과값을 리턴한다. int count = 0; int nu..
🎈 JVM과 Call by value & Call by reference
💻 프로그램이 실행되는 과정 지구상에 있는 모든 컴퓨터는 다음과 같은 방법으로 실행된다. 명령어를 실행시키고 싶다면 HDD에 저장된 실행파일(명령어), 데이터파일(mpeg,mp4)을 RAM으로 가져와야한다. 이를 loading이라고 한다. RAM에서는 해당 실행파일 혹은 데이터파일 중 일부를 읽어서(용량이 크다면) CPU로 보낸다. CPU(L1 캐시)가 작업을 수행한다. JVM의 메모리 구조 Java의 JVM의 메모리는 3가지 구조를 가지고 있으며 각각의 역할은 다음과 같다. 영역 설명 Method Area .class의 내용 (클래스코드, 상수, 클래스 변수) JVM stack 메서드를 호출할 때 생성되는 로컬 변수를 둔다 (메소드,파라미터) Heap (only new) new 연산자로 생성되는 변수 ..
📁 스캐너와 메서드를 활용한 사용자 입력 콘솔 만들기
📌 소개 사용자로부터 구성원, 프로젝트, 작업에 대한 내용을 입력받고 그에대한 내용을 출력하는 프로그램 📌 사용된 메서드 이름 기능 addMember() 멤버를 추가한다 listMembers() 멤버 리스트를 출력한다 addProject() 프로젝트를 추가한다 listProjects() 프로젝트를 출력한다 addTask() 작업을 추가한다 listTasks() 작업을 출력한다 promptString() 문자열을 입력받는다 promptInt() 정수를 입력받는다 promptDate() 날짜를 입력받는다 📌 사용된 문법 문법 for array switch if 📌 step by step 배열을 사용해 입력데이터를 저장하였다. 스캐너를 통해 콘솔로 사용자 입력을 받았다. 1) 회원 데이터를 입력 받는 코드를 ..
📚 Scanner 사용법
✔️ Scanner 사용할 때 주의사항 nextInt() , nextLine()을 동시에 쓸 때 공백 문제가 발생한다. 왜 이런 문제가 발생하는가? 먼저 해당 메서드의 기능에 대해 알아볼 필요가 있다. ✔️ Scanner의 메서드 중 일부 데이터타입 메서드명 기능 String next() 문자열을 일렬로 나열해서 출력한다. String nextLint() 문자열을 줄바꿈해서 출력한다. String nextInt() 숫자를 출력한다. 예시 1) package com.eomcs.lang.ex99; public class Exam0240 { public static void main(String[] args) { java.util.Scanner keyboard = new java.util.Scanner(Sys..