내일배움캠프 44

[Java] 클래스를 사용하여 기본연산 계산기 만들기 트러블슈팅

사칙연산 수행 후 결과값을 반환하고 결과를 출력하는 Calculator클래스 생성이전 클래스없이 만든 App클래스에 Calculator클래스가 활용되게 코드 수정 (연산 수행은 Calculator에서 진행)App클래스에서 Calculator클래스를 직접적으로 접근못하게 수정- App클래스에서 연산부분 제외 while문 유지 및  기록저장/삭제 문구 추가package com.example.calculator2;import java.util.ArrayList;public class Calculator { // 결과 값 저장을 위한 배열 생성 및 private ArrayList record = new ArrayList(); // 생성자 (위에서 이미 초기화를 해 기본생성자로 작성해도 이상없음 ..

[Java] 클래스 없는 계산기 트러블슈팅

조건- Scanner를 통해 양의 정수 2개를 하나씩 전달 받아 적합한 타입으로 선언해 변수에 저장- Scanner를 통해 사칙연산 기호를 전달받아 적합한 타입으로 선언해 변수에 저장- 입력받은 정수들과 기로흫 사용해 연산 후 결과 출력- 반복문을 사용하되 "exit"문자열을 입력하기전까지 무한으로 계산- firstNumber와 secondNumber가 2번 선언됨 - 변수 선언 중복- while문 안의 변수에서 int를 지워 처음 선언된 변수를 사용추가적으로 if문 같은 조건문, 반복문의 조건에 비교연산자를 틀리는 경우가 많았다- 위 코드에서 == 으로 작성하면 오류가 풀린다.

객체를 활용한 계산기 제작 과정

step 1. Calculator클래스에 if문으로 숫자, 연산자, 숫자순으로 들어온 걸 연산하여 Main에서 출력-----step 2. 각 연산들의 클래스를 만들어 Calculator와 연결기존  if문 안의 식을 ex) AddOperation.operate(firstNumber, secondNumber)로 변경- 연산자들을 각 클래스로 생성하여 단일 연산 책임의 원칙에 의해 유지보수와 확정성을 챙김 step 3.연산 클래스들을 추상클래스를 사용해 추상화각 연산자들은 추상클래스를 상속받고 오버로드됨 마무리가 되가면서 각 클래스들이 정리되고 Main과  Calculator클래스 코드의 시인성이 좋아졌다.그래도 아직 배운것에 대해 완전히 이해하고 진행한것이 아니기에 다시한번 강의를 듣고 정리후주간 과제 L..

[프로그래머스_Lv1] 1~6

1) 두수의 차class Solution {     public int solution(int num1, int num2) {         int answer = 0;         if((-50000            answer = num1 - num2;         }         return answer;     } }2) 두수의 곱 class Solution {     public int solution(int num1, int num2) {         int answer = 0;         if ((0            answer = num1 * num2;         }         return answer;     } } 3) 몫 구하기 class Solution { ..

JAVA가 가장 많이 사용되는 프로그래밍 언어인 이유

객체지향현실에서 어떤 물체를 만들 때 부품 하나하나를 만들어 조립하는 것처럼소프트웨어에선 부품에 해당하는 객체를 먼저만들고 객체들을 하나씩 연결하여 프로그램을 만든다이를 객체지향 프로그램이라 한다. 1) 객체객체란?세상에 존재하는 식별 가능한 물체 [물리적 : 자동차 사람, 계산기 // 개념적 : 학문, 운동]속성(필드) + 행동(메소드)객체 모델링 : 현실의 객체를 프로그램상의 객체로 설계하는 것객체 간 관계집합 관계 : 완성품과 부품의 관계[자동차 - 엔진, 타이어,핸들]사용 관계 : 객체의 속성(필드)을 읽고 변경하거나 행동(메소드)을 호충하는 관계[사람 - 자동차(전진, 후진)]상속 관계 : 부모와 자식의 관계(공장[부모]과 제품[제품]의 관계라 생각 할 수 있다.)객체 지향 프로그램의 특징- 캡..

[Intelij] 컴파일도중 프리징이 걸린다면

오늘 첫 Java 문법 강의를 들으며 실습을 진행했다.사전캠프 기간동안 유튜브로 한번들었던 내용이라 다시해보는 마음으로 진행하였다.다만, 반복문과 조건문을 진행할 때 그리 큰 코드가 아닌데도 프리징이 걸렸다.유추하자면 램 용량을 많이 잡아먹혀서 그런듯하다. 추가적인 방법들이 인터넷에 있으나 괜히 이상해질 것 같아 추후에 다시 해보기로 일단은 여러파일을 동시에 너무 많이 켜두는 습관을 고처야할듯하다...

[GitHub]_파일 업로드 중 에러코드 해결방안(2)

어제에 이어서 github로 에러코드에 대해 강의를 들으며 공부를 해봤다. 이전에 튜너님께서 해주신 설명을 바탕으로 다시 진행해봤고 이번엔 오류가 발생하지 않았다. 1. git에는 하나의 폴더만 가능하다.A라는 파일을 만들어 그 안에 코드를 작성에 git에 commit을 진행하면 오진 그파일에서만 업로드를 진행해야한다.만일 A안에 다른 폴더를 만들어 코드를 작성하면 두 파일이 충돌해 에러가 발생한다. 2. 처음 파일을 올리고 그 안에 다시 폴더를 만들고 파일을 업로드 할땐 git init을 하지마라git init를 진행하면 2개의 로컬로 인식해 충돌폴더안에 폴더를 만들어서 한다면 그냥 git add. / git commit -m / git push 를 진행 이럴땐 나중에 만들었던 파일의 git파일을 삭제..

[GitHub]_파일 업로드 중 에러코드 발생시 해결방법(1)

일반적으로 맥OS, WINDOW OS와 차이가 있지만 기본적으로 터미널을 통해[초기 업로드]git init  //해당 파일의 폴더에 GIT 생성git add . //.은 모든을 뜻하며, 모든 파일을 저장할 것으로 지정git commit -m "텍스트 입력" //파일을 저장 " "은 그대로 올라감git remote add origin https://github.com/Seung-min-88/sparta.git  //해당 주소는 나의 GIT 주소로 처음 생성 시 적혀있다git branch -M main git push -u origin main 추후에 수정후 업로드 할때 는git add .git commit -m " "git push origin main 이때 에러가 발생할수 있다.[너무 흔하게 발생해서 짜..