1. 프로그래밍 언어 프로그래밍 언어란 주어진 어떤 문제를 해결하기 위해 인간과 컴퓨터 사이에서 의사소통을 가능케 하는 인공적인 언어이다. 이 언어를 통하여 사용자는 컴퓨터에게 일련의 일을 시키는 명령어들의 집합체인 프로그램을 작성할 수 있다. -> 컴퓨터에게 일을 시키기 위한 언어 1-1. 프로그래밍 언어의 종류 기계어 : 컴퓨터가 이해하는 언어로서, ...
1. 자바 설치 1-1. 자바 설치여부확인 cmd창에 "java -version" 입력하여 확인 1-2. 오라클 홈페이지에서 다운받을 것 버전은 약 6개월 주기로 하나씩 나와 2023년 3월에 Java20 나올 예정. 하지만 우리가 사용할 버전은 Java11. 현업에서는 Java8에서 11로 옮겨지고 있는 추세이며, 기업은 큰 돈 써서 프로그램을 만든 것이...
1. 주석문 이란? 프로그램 소스코드 안에 개발자의 필요에 따라 명시하는 설명문을 주석문이라고 한다. 주석문은 프로그램으로 컴파일 되지 않으며, 특정 명령문이 실행되지 않도록 한다. 또한 나중에 본인 또는 타인이 코드를 보고 이해시키도록 설명하는 용도로 쓰인다. 2. 주석문의 종류 한줄만 처리하는 주석문 : // \*/ /* 이 블록 안...
1. 변수란? 다양한 종류의 자료를 표현할 수 있는 값을 변수라고 부르며, 일반적으로 웹 페이지에서 처리하고자 하는 "데이터"에 해당한다. 2. 자료형(data type) 프로그래밍 언어에서 변수의 종류를 구별하기 위해 사용되는 키워드이다. 자바에서 제공되는 자료형의 종류에는 8가지가 있으며 이를 기본 자료형(primitive data type)이라고 한...
연산자 1. 연산자 프로그램에서 연산을 수행하기 위하여 사용되는 특수기호들을 말한다. 2. 대입연산자 (=) 변수에 숫자나 문자열 등의 자료를 입력하거나 연산 결과를 다른 변수에 할당한다. 3. 사칙 연산자 (+,-,*,/) 더하기(+), 빼기(-), 곱하기(*), 나눗셈의 몫(/), 나눗셈의 나머지(%) 10나누기 3을 계사할 때, 수학에서는 몫이 3,...
형변환(Casting) 1. 형변환이란? 변수의 자료형(Data type)이 변환되는 것을 의미한다. 특정 자료형의 값을 다른 자료형의 변수에 대입할 수 있다. Data에 대한 손실 유무에 따라 암묵적 형변환과 명시적 형변환의 두 종류가 있다. 2. 암묵적 형변환 암묵적 형변환은 서로 다른 자료형을 연산 혹은 대입하는 경우, java 컴파일러가 자료형을 통...
예제 풀어보기 (1~5번 if문, 6~7번 switch문을 이용할 것) 문제 1번. 문제 1번. 만약 3000원 이상의 돈을 가지고 있으면 "택시를 타고 가라"출력, 그렇지 않으면 "걸어가라" 출력 2번. 만약 3000원 이상의 돈이 있거나 카드가 있으면 "택시를 타고 가라" 출력, 그렇지 않으면 "걸어가라" 출력 3번. 어떤 특정 정수값 a(변수명) ...
1. for문 for문은 사람이 직접 처리하기에 부담스러운 반복적인 작업을 처리하기에 매우 용이하다. ex) 1+2+3+4+5+6+7+8+9+10+ ... + 1000 = ? 형식 for( 초기식; 조건식; 증감식 ){ ...반복적으로 동작할 구문... } 초기식 : 최초로 초기식을 설정한다. 조건식 : 초기식을 설정한 다음에는 조건식을 판단한다. 만약...
1. 배열이란 변수를 그룹으로 묶은 형태의 한 종류로서, 사물함 같은 형태를 갖고있다. 하나의 배열안에는 같은 종류(데이터 형)의 값들만 저장될 수 있다. 2. 배열을 만드는 방법 배열의 선언 데이터형[ ] 배열이름; 배열의 생성 : 변수를 저장할 수 있는 사물함이 생성된다. 배열이름 = new 데이터형[크기]; 배열 생성의 예시 :3개의 int형 변수...
문1. 2중 while문을 이용하여 구구단(2~9) 결과값을 출력 문2. for문을 이용하여 1~10까지의 숫자합 구하기 문3. for문을 이용하여 1~10까지의 홀수의 합 구하기 문4. for 1~10까지의 짝수의 합 문5.(8*8)짜리 별 출력 ** ** ** ** ** ** ** ** 문6. ** ...
문1. 배열 num = {22,3,8,12}의 각배열의 요소의 합을 구하여라 문2. {60,95,88} 각 배열의 합과 평균을 구하여라 문3. {94,85,95,88,90};서로다른 각 배열의 요소 중 최댓값을 출력하는 프로그램 작성 문4. {22,3,8,12) 각요소의 홀수와 짝수의 합을 각각 구하는 프로그램 작성- for문 하나로 끝낼 것 문1. 배열...
1. 메서드란 프로그램의 함수 = 메서드 특정 기능(=연산)을 그룹화해서 재사용하기 위한 단위 public static void 메서드이름(){ ... } 2. 메서드의 호출 정의된 메서드는 다른 메서드를 구성하는 {...} 안에서 다음의 형식으로 사용될 수 있으며, 이를 '메서드를 호출한다'라고 한다. 메서드이름(); 3. 메서드 파라...
2. 객체(=object) 1. 프로그래밍에서의 객체 프로그램에서 표현하고자 하는 기능을 묶기 위한 단위 2 객체를 구성하는 단위 - 객체를 이루는 것은 데이터(변수)와 기능(메서드)이다. 데이터는 변수로 표현 : 객체 안에 포함된 변수를 '멤버 변수', '전역변수', '프로퍼티'.'필드' 라고 부르며, 기능은 메서드로 표현된다. 3. 클래스와 객체의...
1. this란 자기 자신을 의미하는 키워드 클래스 안에서 this를 사용하여 "자기 자신"을 표현한다. 2. this를 사용하여 지역변수와 멤버변수 구분하기 멤버변수와 지역변수가 동일한 이름으로 공존할 때, 유효성의 범위가 작은 변수가 우선적으로 인식된다. 예시 3. this를 사용하여 파라미터와 멤버변수 구분하기 파라미터도 해당 메서드 안에서만 유효...
0. 공통 이름 규칙 영어+숫자+언더바(_)의 조합이고, 첫 글자는 반드시 영어로 표기 1. 클래스 첫 글자는 대문자로 시작, 나머지 글자는 소문자로 표시한다. 두 개 이상의 단어를 조합해야 할 경우, 새로운 단어는 대문자로 시작한다. class Member class MyFirstApp class NetworkHelper 2. 메서드, 변수 대부...
1. 생성자란 new 키워드를 사용하여 객체가 생성될 때 자동으로 실행되는 특수한 형태의 메서드 리턴형을 명시하지 않으며, 메서드의 이름은 클래스와 동일하다. 자동으로 실행된다는 특성 때문에, 객체가 생성되면서 해당 객체의 특성을 초기화 하기 위하여 사용된다. 멤버 변수의 초기값을 할당하는 용도 2. 기본생성자 파라미터가 없는 생성자 클래스에 특별히 생성...
1. 은닉성이란? 멤버변수나 메서드가 객체에 노출되지 않도록 설정하는 기법 객체를 사용하는 측의 실수로 인한 기능의 오작동을 방지하기 위해, 클래스의 일부를 숨기는 처리를 말한다. 2. 적용방법 변수의 이름이나 메서드 이름 앞에 "접근 한정자"를 지정한다. public : 모든 곳에서 접근가능하다. 일반적으로 모든 메서드 앞에 명시한다. private ...
1. 클래스 간의 상속이란? 클래스간에는 부모-자식의 상속 관계를 설정할 수 있다. 부모 클래스 A를 자식 클래스 B가 상속받을 때, B는 A의모든 멤버변수와 메서드를 자신의 것으로 상속받게 된다. 상속 가능 여부 : public 과 protected가 가능하다. B는 A의 public, protected 기능들을 직접적으로 코딩하지 않더라도, 자신의 것...
1. Override란? 부모 클래스가 갖고 있는 기능을 자식 클래스가 재정의 하는 형태. 부모 클래스에 정의된 것과 동일한 이름을 갖는 메서드를 자식클래스가 정의한 경우, 부모 클래스의 기능은 자식에게 가려진다. 즉, 자식클래스의 코드가 구현된다. 이렇게 부모의 기능을 재정의 하는 것을 메서드 Override라고 한다. 하나의 이름으로 다양한 효과를 얻을...
1. 메서드 오버로드(Overload) 원칙적으로 하나의 클래스 안에서는 동일한 이름의 메서드가 두 개 이상 존재할 수 없지만, 이를 가능하게 하는 예외적인 처리기법이다. 2. 이름이 동일한 메서드를 정의하기 위한 조건 메서드 간의 파라미터가 서로 달라야 한다. 1) 파라미터의 데이터 타입이 다르다.(데이터 형이 동일하고 변수의 이름이 다른 경우는 동일한...
객체 형변환과 객체 배열 1. 객체 형변환 java 기본유형의 데이터들처럼 객체 참조변수의 경우에도 형변환(castring)이 이루어진다. 서로 다른 클래스 유형으로부터 나온 갹체 참조변수들 간의 대입에는 일정한 규칙이 있다. Parent parent = new Child(); 왼쪽항(parent)과 오른쪽(Child)의 객체 유형이 서로 다른 경우,...
1. 객체 배열 일반 데이터 타입의 배열과 동일한 개념으로, 같은 클래스의 객체 여러개를 그룹화 할 수 있다. 일반 데이터 형 배열의 경우 2. 배열 할당 = 일반 데이터형은 단순히 값을 대입하지만, 객체 배열은 new라는 키워드를 사용하여 객체를 할당해야 한다. 일반 데이터형 배열 객체 배열 3. 부모클래스의 배열에 자식클래스의 객체를 넣기 객체 형...
추상화 부모클래스에서 어떤 메서드를 각자식들에게 강요하는 기법 즉, 안 만들거나 이상하게 만들면 에러가 나도록 하는 기법 다형성 (Override, Overload)은 서로 다른 기능이지만 메서드의 이름을 공통되게 처리함으로써 전체 프로그램의 일관성을 유지하게 한다. Override.처리의 문제발생 가능성 "@Override " 선택적으로 사용, 메서드 ...
게임캐릭터를 만들 것이다. 주인공이 있고 몬스터가 있다. 내가 주인공과 몬스터의 공동기능을 부모클래스로 뽑아낼 것이다 Unit이라는 부모클래스를 두고 [공격] [방어] [걷다] [뒤다] [점프] [아이템줍기]를 추상화로 설정했다. 근데 몬스턴가 아이템을 주우면 안 되자나? 그리고 공격-방어 비슷하고 걷다-뛰다-점프가 비슷하다. 즉, 한 곳에 모아야겠다라는...
1. 객체 간의 공유 자원을 표현하는 static 키워드 클래스를 설계할 때, 멤버변수 중 모든 객체에서 공통적으로 사용해야 하는 값에 static을 붙인다. 그래서 interface마지막 부분의 변수는 아래와 같이 바뀌게 된다. static이 붙은 멤버변수는 객체의 갯수에 상관없이 단 하나만 생성되며, 이를 모든 객체가 공유하기 때문에 메모리를 효율적...
1 .디자인 패턴이란? 방청소를 할 때, 여러방 법들을 시도해보고 제일 효율적인 방법을 찾고 루틴화시킬수 있다. 이것을 코딩에 적용한 일종의 기법이다. 디자인 패턴이란 기존 환경 내에서 반복적으로 일어나는 문제들을 어떻게 풀어갈 것인가에 대한 일종의 솔루션 같은 것이다. 디자인 패턴은 설계자들이 "올바른 설계를 빠르게 만들 수 있도록 도와준다." Headf...
1. package 패키지 : 클래스에 대한 묶음 단위 클래스를 용도별이거나 기능별로 그룹화 한 것을 말한다. 소스코드는 폴더로 분류된 형태로 존재하게 된다. 서로 다른 패키지에 속해 있다면 다른 클래스와 이름이 동일하더라도 충돌이 발생하지 않는다. (서로 다른 폴더에는 이름이 같은 파일들이 존재할 수 있다.) 패키지에 소속된 클래스 파일은 첫 번째 라인...
1. Wrapper Class java는 데이터를 관리하기 위하여 기본 데이터 타입을 지원하지만, 클래스를 통해서 만들어진 객체를 통해 데이터 관리도 가능하다. 어떤 상황에서는 기본 데이터 타입의 변수를 객체 형태로 사용해야 하는 경우가 있는데, 이 때 기본형 타입을 객체로 포장할 필요가 있다. 포장 클래스(Wrapper Class)는 특정 기본형 타입을 ...
1. 수학적 연산을 지원하는 클래스 Math클래스는 흔히 계산을 하는데 도움이 되는 많은 수의 기본적 수학 함수들을 제공한다. Math 클래스는 Java 표준 크래스 라이브러리의 java.lang 패키지에 정의되어 있다. Math 클래스의 모든 메서드들을 static 메서드로, 클래스 객체를 생성하지 않고 그 메서드가 정의된 클래스 이름을 통해 호출될...
1. 정규표현식이란? 정규표현식(Regular expression)은 특정한 규칙을 가진 문자열의 집합을 표현하는데 사용하는 '형식언어' 이다. 정규표현식은 많은 텍스트 편집기와 프로그래밍 언어에서 '문자열의 검색과 치환'을 위해 지원하고 있다. ex) 개발자인 내가 사용자들로부터 ID를 받을 건데 영어랑 숫자로 구성되어있어야해. 한글을 받으면 안돼. ...
1. Error의 종류 컴파일 에러 .java -> .class 로 JVM이 컴파일을 하려고하는데 컴파일 자체가 안되는 에러. 소스코드의 구문 오류로 인하여 컴파일이 불가능한 상태. 이클립스에서 빨간색으로 표시되는 경우에 해당한다. 프로그램을 실행하기 전에 발견되므로 상대적으로 수정하기 쉽다. 런타임 에러 구문 상의 에러는 없지만 프로그램이 실행되는 과...
1. Calendar class 년, 월, 일, 요일, 시, 분, 초 등의 시간에 대한 클래스이다. 일단 실행하는 그 시각을 보여주기부터해보자 (객체를 안 만들고 바로 출력하는 것은 값이 계속 바뀌어서 그런가..?) 매번 현재 시각을 저렇게 쭉 치기 귀찮으니 한번에 출력하는 메서드 저장하기 시간과 날짜의 덧셈뺄셈 날짜 및 시간 설정하기 요일, 주차...
1. Collection Framework란 다수의 데이터를 쉽게 처리할 수 있는 표준화 된 방법을 제공하는 클래스들로, 기존 배열형태의 자료 저장에서 좀 더 다양한 데이터들을 저장하기 위한 필수 클래스이다. 2. Collection Framework의 종류 3. HashMap 클래스 데이터에 이름표를 적용하여 저장하기 HashMap클래스는 Ma...
콘솔창에 입력하는 방법을 배워보자 중간에 sc.close(); 하고 다시 켜서 다시끄려고하면 이게 안 돼. 즉, 껐다 켰다 가 안돼.. 이거하는 방법 고민해봐. 인스턴스 여러 개만들기? 아래의 표와 같이 Scanner클래스의 메서드등으로 입력받을 수 있다. 다른 것은 문제가 안되지만 String next() 와 String nextLine()는 알아보자...
1. java.io.file File 클래스는 파일 또는 폴더에 대한 정보를 제공하는 클래스이다. File 클래스의 객체는 정보를 조회하고자하는 파일이나 폴더의 경로에 대한 문자열을 생성자 파라미터로 전달하는 형태로 만들 수 있다. 이 때, 파라미터로 전달되는 경로가 실제로 존재하지 않더라도 File객체의 생성이 가능하다. C:\photo\food.jpg ...