상속된 메서드와 동일한 이름, 동일한 인수를 가지는 메서드를 정의하여 메서드를 덮어쓰는 것. class Animal { public void makeSound() { System.out.println("Animal makes a sound"); } } class Cat extends Animal { @Override public void makeSound() { System.out.println("Meow"); } }
이름은 같지만, 인자의 타입과 개수에 따라 구분. 리턴형이 다른 경우에도 동일한 이름을 가진 메서드를 오버로딩으로 정의할 수 있다. 오버로딩은 같은 이름을 가진 메서드나 함수를 여러 개 정의하고, 매개변수의 개수, 타입 또는 순서를 다르게하여 다양한 호출 방식을 지원하는 것을 의미한다. public int printSum(int a, int b) { int sum = a + b; return sum; } public double printSum(double a, double b) { double sum = a + b; return sum; } 오버라이딩과 달리, 상속의 개념과 독립개념이다. 즉, 상속관계에서 일어날 수도 있고, 클래스 내에서 발생할 수도 있다. 클래스 내에서 같은 이름의 메서드를 다른 시..
일반적으로 배열에 저장된 요소에 접근하기 위해서는 배열에 저장된 순서인 인덱스 번호를 사용하게 된다. function getScores() { return [70, 80, 90]; } let scores = getScores(); let x = scores[0]; // 배열의 인덱스 번호로 접근 let y = scores[1]; let z = scroes[2]; Array Destructuring은 배열에 저장된 요소를 분해해서 배열의 순서에 따라 변수를 정의해서 사용할 수 있게 해준다. let [x, y, z] = getScores(); console.log(x); // 70 console.log(y); //80 console.log(z); //90 활용: 위도, 경도 데이터를 반환받아 사용할 때. 일..
function name(){} 도 블록 스코프 function 안과 밖에 같은 이름의 let 변수 선언 가능 스코프가 다르기 때문 let sprt = "야구"; function show(){ let sprt = "축구"; log("안::", sprt); //축구 } show(); log("밖::", sprt); // 야구 function 밖의 let 변수를 function안에서 사용 가능(클로저) let sprt = "야구"; function show() { log(sprt); // 함수 안에서 sprt 를 찾으려고 함 => 못찾으니 밖에서 변수를 찾음 => 클로저라 함 }; show(); // 야구 try-catch 문도 블록 스코프 try 블록{} 기준으로 안과 밖에 같은 이름의 let 변수 선언 ..
Built-in 오브젝트 Function, Object, Array 등 오브젝트 Built-in 오브젝트로 생성한 오브젝트 function book(){코드} [1, 2], {key: value} 인스턴스 new 연산자로 생성한 오브젝트 new Book(); 변수 구분 로컬(지역) 변수, 글로벌(전역) 변수 이유: 기능과 목적이 다르기 때문 글로벌 변수의 기능, 목적 다른 js 파일에서 변수값 공유 가능 파일에서 공통 변수 개념으로 사용 의도는 좋으나 처리 속도 떨어짐 로컬 변수의 기능, 목적 빠르게 식별자를 해결하기 위해, 가까운 스코프의 변수를 사용하려는 것 var 키워드 문제 앞서까지는 문제 없었지만, 글로벌 변수는 글로벌 오브젝트의 로컬 변수 => var 키워드 사용이 정상 var 키워드를 작성하..
Javascript의 정식 명칭 - ECMAScript 2015 Language Spec. - ECMA-262 6차 Edition 약칭 - ES6: ES2015 - ES6+: ES6 이후 에디션의 통칭 스펙 규모 - ES5: 2011.06, 258 - ES6: 2015.06 566 => 대규모 개편 - ES7: 2016.06, 586 -1년 마다 스펙 발표
// node_modules 빠르게 삭제할 수 있는 방법 rm -rf node_modules [nodemon] app crashed - waiting for file changes before starting... 에러 - git 이전 버전으로 돌아가고, 터미널 창 다시 껐다 켰더니 해결되었음......