전체 글 84

[Java] 9. 클래스와 객체 Part.3

1. 다형성 (1) 다형성(Polymophism) 여러 형태를 가지는 성질이란 뜻으로, 한 가지 타입이 여러가지 형태의 인스턴스를 가질 수 있다는 의미 같은 타입이지만 실행 결과가 다양한 객체를 이용할 수 있는 성질 부모 타입 변수에는 모든 자식 인스턴스들이 대입될 수 있음 // 1) 지금까지의 객체 생성 방식 A obj = new A(); /* 2) 부모 클래스 타입의 참조변수로 자식 클래스 타입의 객체를 참조할 때 참조변수 obj 하나로 A타입의 인스턴스를 참조할 수 도, B타입의 인스턴스를 참조할 수도 있음. */ A obj = new B(); // 클래스 B가 A를 상속할 때 예시 class A{ void methodA(){ System.out.println("methodA"); } } class..

JAVA/이론 2023.03.20

[Javascript] 7. 오브젝트(Object)

1. 오브젝트 (1) 오브젝트 오브젝트(Object)는 키(Key)와 값(value)의 쌍(pair)(들)의 집합을 가지는 객체이다. 오브젝트가 가지는 쌍들에는 순서가 없음으로 순번을 통한 접근이 불가능하다. 오브젝트에 키를 통해 값에 접근할 수 있고, 하나의 오브젝트가 가지는 동일한 계층의 키는 고유해야 한다. 오브젝트가 가지는 키는 반드시 문자열이어야 하고, 값은 타입에 제한이 없다.let [오브젝트 이름] = { [키 1] : [값 1], [키 2] : [값 2], .... } 가령, 국가 코드별 한국어 이름을 가지는 오브젝트의 구조는 아래와 같을 수 있다.let countryNames = { KR: '대한민국', US: '미국', JP: '일본', FR:..

JavaScript 2023.03.17

[Javascript] 6. 배열(Array)

1. 배열 (1) 배열 배열(Array)는 하나의 변수가 여러개의 값을 가질수 있게 하기 위해 사용한다. 배열의 작성 형태는 JSON(JavaScript Object Notation) Array 의 형태와 같다. 배열의 선언은 아래의 형태로 한다. 가령, 'Apple', 'Banana', 'Orange'이 세 개의 문자열을 가지는 fruits라는 배열은 아래와 같이 만든다. let fruits = ['Apple', 'Banana', 'Orange']; 배열이 가지는 각 항목을 인자라 하는데, 각 인자에 접근하기 위해서는 인자의 순번을 알아야 한다. 인자의 순번은 가장 첫 번째 부터 0 부터 시작하여 1씩 추가된다. 배열에 대괄호와 인자 번호를 이용하여 각 인자에 접근할 수 있다. console.log(f..

JavaScript 2023.03.17

[Javascript] 5. 함수(Function)

1. 함수 (1) 함수 함수(function)는 호출(Call) 가능한 최소단위이다. 함수는 반복적으로 여러곳에서 사용되는 반복적인 로직을 분리하기 위해 사용한다. 함수의 명명법은 카멜 케이스이다. 또한 이는 동사(Verb)이거나 '동사 + 목적어(Object)'의 형태를 가지는 것이 바람직하다. (2) 함수 호출 함수 호출은 일반 함수와 화살표 함수를 굽누하지 않고 아래와 같이 호출할 수 있다. [함수 이름]([전달인자], ....) 가령, sum이라는 이름을 가지는 함수에 전달인자 3 과 7을 전달하여 호출하는 표련식은 아래와 같다. sum(3, 7); (3) 일반 함수 function [함수이름]([매개변수, ...]){ [구현부] } 가령 전달 받은 매개변수 a와 b 두개의 합을 출력하기 위한 함..

JavaScript 2023.03.17

[Javascript] 4. 반복문

1. 반복문 (1) 공통키워드 break : 현재 실행 중인 반복문을 종료한다. continue : 현재 사이클(루프)을 생략하고 다음 사이클로 넘어간다. (2) for for 반복문은 반복의 기준이 되는 (숫자인) 변수를 활용하여 특정 구현부를 반복하고자 할 때 사용한다.for([변수 선언/초기화]; [반복 조건]; [변수 가감 등 할당]) { [구현부] } for를 위한 변수를 (선언)초기화한다. 반복조건이 참(true)인지 확인한다. (ii)의 반복조건이 참(true)이라면 구현부를 1회 실행한다. (ii)의 반복 조건이 거짓(false)이라면 for문을 종료한다. 변수 가감 등 할당을 실시하고 (ii)로 돌아간다. 1부터 5까지의 정수를 출력하기 위해 아래와 같이 작성한다.for (let i = ..

JavaScript 2023.03.17

[Javascript] 3. 조건문

1. 조건문 (1) if 어떠한 조건이 참(true)일 때에만 구현부를 실행하기 위해 사용한다.if([조건]){ [구현부] } (2) if-else else는 앞서 제시된 조건이 모두 거짓일 때 최종적으로 실행할 구현부를 위해 사용한다. else는 if문 하나당 반드시 한개 이하만 존재해야한다. else는 if문의 마지막 구문이어야한다. 단순 if-else문은 주어진 두 개의 구현부를 중 반드시 하나가 실행되게 되어있다.if([조건]){ [구현문] } else{ [거짓 구현문] } (3) if-else if else if는 선행하는 조건이 거짓일 때 부차적인 조건을 추가하여 조건식으로 구현부를 실행하고자 할 때 사용한다.if([선행 조건]){ [선행 구현부] } else if([부수 조건1]){ [부수 ..

JavaScript 2023.03.16

[Javascript] 2. 연산자

1. 연산자 (1) 할당 연산자 할당 = : x = y 꼴에서 y를 x에 할당한다. 더하기 복합 대입(할당) 연산 += : x += y 꼴에서 x와 y를 더한 값을 x에 할당한다. x = x + y와 같다. 빼기 복합 대입(할당) 연산 -= : x -= y 꼴에서 x와 y를 뺀 값을 x에 할당한다. x = x - y와 같다. 곱하기 복합 대입(할당) 연산 *= : x *= y 꼴에서 x와 y를 곱한 값을 x에 할당한다. x = x * y와 같다. 나누기 복합 대입(할당) 연산 /= : x /= y 꼴에서 x와 y로 나눈 몫을 x에 할당한다. x = x / y와 같다. 나머지 복합 대입(할당) 연산 %= : x %= y 꼴에서 x와 y로 정수부까지 나눈 나머지를 x에 할당한다. x = x % y와 같다. ..

JavaScript 2023.03.16

[Javascript] 1. 변수와 상수

1. 변수 변수(Variable)은 선언 및 값 초기화 이후 값이 변할 수 있는 것을 의미한다. 변수의 명명은 카멜케이스로 한다. 변수의 이름은 동일하거나 보다 상위의 스코프에서 사용중인 이름이나 약속된 키워드를 변수 이름으로 사용할 수 없다. 변수 선언시 값을 부여하지 않으면 초기 값으로 undefined 가 지정한다. 변수는 let 키워드를 화용하여 아래와 같이 선언할 수 있다. 변수 선언(Variable declaration) let [변수 이름]; 위처럼 값이 초기화 없이 변수를 선엄할 경우 그값은 undefined 로 초기화한다. 변수 선언 및 초기화(Variable declaration and initialization) let [변수 이름] = [초기값]; 2. 상수 상수(Constant)는..

JavaScript 2023.03.16

[Java] 8. 클래스와 객체 Part.2

1. 제어자 (1) 접근 제어자 클래스나 멤버의 사용을 제어하기 위해서 사용 접근 제어자는 외부에서 접근할 수 있는 정도와 범위를 정해줌 종류 public : 접근 제한이 없음 protected : 같은 패키지나 자식 클래스에서 접근 가능 default : 같은 패키지 내에서만 접근 가능 private : 같은 클래스 내에서만 접근 가능 구분 클래스 패키지 자식 클래스 전체 세계 public O O O O protected O O O X default O O X X private O X X X (2) 접근자와 설정자 캡슐화(정보 은닉) : 구현의 세부 사항을 클래스 안에 감추는 것 클래스 안의 데이터를 외부에서 마음대로 변경하지 못하게 하는 것 외부에서 변수는 감추고, 메소드는 사용할 수 있도록 클래스를..

JAVA/이론 2023.03.15

[Java] 7. 클래스와 객체 Part.1

1. 객체지향 프로그램 (1) 객체지향 프로그램(OOP : Object-Oriented-Programming) 모든 데이터를 오브젝트로 취급하여 프로그래밍 하는 방법으로, 처리 요구를 받은 객체가 자기 자신의 안에 있는 내용을 가지고 처리하는 방식 C, Pascal, Basic 등과 같은 절차형 언어(POP : procedure-oriented-programming)가 크고 복잡한 프로그램을 구축하기 어렵다는 문제점을 해결하기 위해 탄생 (2) 객체지향 프로그래밍의 특징 자료추상화 상속 캡슐화 다형성 설명 불필요한 정보는 숨기고 중요한 정보만을 표현하는 것 새로운 클래스가 기존의 클래스의 자료와 연산을 이용할 수 있게 하는 것 데이터(속성)와 데이터를 처리하는 함수를 하나로 묶는것 어떤 한요소에 여러 개..

JAVA/이론 2023.03.15