전체 글 234

static

- static  :  정적 멤버변수 --> 현재 클래스에 대한 모든 객체가 공유하는 값 - static은 객체가 생성되지 않더라도 존재하는 값 - static 메서드는 객체가 생성되지 않더라도 활성화 돼있는 기능 - static 메서드에서는 일반 변수는 접근 불가∵ static 기능이 활성화된 시점에는 객체가 생성돼있지 않을 수도 있기 때문에 일반 기능이 반드시 존재한다는 보장이 없다        - 특정 객체에 속해 있는 형태가 아니므로 객체 생성 전에도 클래스 이름을 통해 사용 가능 - 일반 클래스의 경우 객체 생성에 아무런 제약이 없기 때문에 각각의 메서드를 호출할 때마다 새로운 객체를 생성할 수 있다  ->  메모리 낭비 - 클래스에 멤버변수가 없다면 객체를 여러개 만들 필요 없다 - this ..

IT/JAVA 2024.09.24

인터페이스

- 추상메서드만을 정의하고 있는 특수한 형태의 클래스- 인터페이스 안에 포함되는 메서드는 모두 추상메서드뿐이므로 abstract 키워드를 생략할 수 있다- 추상 메서드(본문이 없는 메서드)의 모음이다. 이는 클래스가 제공해야 하는 메서드를 정의하는 청사진 역할을 한다 - implements 키워드를 사용하여 상속 받는다. - 인터페이스는 다중 상속이 가능하다.  -->  다형성- 클래스와 인터페이스를 함께 상속할 경우 클래스 상속구문 뒤에 인터페이스 상속구문을 명시한다public class Monster extends Unit implemets IMove, IFight {} - 인터페이스를 상속받은 클래스는 인터페이스에 선언된 모든 메서드에 대해 구체적인 구현을 제공해야 한다▽ 예)/** * 게임 중 캐..

IT/JAVA 2024.09.24

VS Code Extension

Markdown All in One- Yu Zhang- 문법강조, 미리보기 기능 지원 Markdown PDF- yzane- PDF 파일 변환 Markdown Preview Github Styling- Matt Beirner- Github 스타일의 미리보기 지원 Korean Language Pack for Visual Studio Code- 한국어 세팅 Auto Close Tag- 시작태그를 작성하면 종료태그를 자동으로 추가해준다 ( 요즘은 자동으로 있는 기능 ) Auto Rename Tag- 시작태그 수정하면 종료태그도 자동으로 수정해준다 Color Highlight- 색상 코드 값을 실제 색상으로 강조한다 Highlight Matching Tag- 선택한 태그와 함께 반대쪽 태그를 색상으로 강조한다 L..

IT/VS Code 2024.09.18

overflow

overflow (오버플로우) 현상 - 데이터 타입이 저장할 수 있는 범위를 초과하는 값을 계산하거나 저장할 때 발생하는 문제- 예를 들어, 정수형 변수는 정해진 비트 수만큼의 값을 저장할 수 있는데, 그 범위를 넘어서면 값이 잘못되거나 예기치 않은 결과가 발생한다- 예를 들어, 8비트 정수형 변수는 -128에서 127까지의 값을 저장할 수 있다.만약 이 범위를 넘어서는 값을 저장하려고 하면 오버플로우가 발생한다.예를 들어, 127에 1을 더하면 결과가 -128로 돌아가게 된다.이는 8비트 정수의 비트가 순환하기 때문이다- 다른 예로, 32비트 정수형에서는 약 -21억에서 21억까지의 값을 저장할 수 있다.이 범위를 초과하면 오버플로우가 발생하고, 결과가 예기치 않게 변할 수 있다.오버플로우는 다음과 같..

IT/IT 2024.09.13

입출력

● 입력 ★ ★ 문자열과 숫자를 하나의 프로그램에서 입력 받아야 하는 경우 *문자* > *숫자*  순서로 입력 받아야 한다!!! - 숫자를 읽은 후 nextLine()을 호출하면 예상치 못한 동작이 발생할 수 있다- 이는 숫자를 읽은 후 남아 있는 개행 문자(\n)를 nextLine()이 읽기 때문이다 => 숫자 뒤에 문자열을 읽을 때는 nextLine()을 호출해 개행 문자를 처리해야 한다import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); // 숫자 입력 System.ou..

IT/JAVA 2024.09.10

가상요소

:before요소 내용 앞쪽에 새 컨텐츠 추가:after요소 내용 끝에 새 컨텐츠 추가:selection마우스 드래그로 선택한 텍스트 컨텐츠 영역 선택:marker목록 아이템 앞에 붙는 마커 선택:first-letter현재 웹 브라우저에 보이는 상태를 기준으로 요소의 텍스트 컨텐츠 첫 글자 선택:first-line현재 웹 브라우저에 보이는 상태를 기준으로  요소의 텍스트 컨텐츠 첫 줄 내용 선택

IT/HTML, CSS 2024.09.08

모듈

● ES5 ex 1)MyModule1.js ▼function helloWorld() { console.log("Hello World");}module.exports = helloWolrd;JS ▽  const my = require( './MyModule1' );my();출력결과 ▽Hello World ≫ ≫ ≫module.exports = ~~~;require();( 파일 확장자 생략 가능 )( 동일경로여도 './' 생략불가 )  ex 2)MyModule2.js ▼module.exports.name = '노드';module.exports.property = { id: 'node.js', type: 'javascript' };module.exports.say = function () { consol..

IT/JavaScript 2024.09.07

AJAX

● AJAX - Asynchronous Javascript And Xml- JavaScript 와 XML 형식을 이용한 비동기적 정보 교환 기법- 이름에 XML이 포함되어있긴 하지만 요즘은 XML을 잘 사용하지 않고 대부분 JSON 형식을 다룬다 - 브라우저의 XMLHttpRequest를 이용해 전체 페이지를 새로 가져오지 않고 페이지 일부만을 변경할 수 있도록 JS 를 실행해 서버에 데이터만을 별도로 요청하는 기법 - 비동기 JS로 XML을 처리하는 기법- 특정 프로그램이 아니라 JS의 기법- XML보다 JSON이 용량이 적어 대체됐다   - JS 라이브러리 중 하나- JS를 통해 서버에 request, response 한다- JS를 통해 클라이언트, 서버 간의 통신을 한다- JS 를 통해 비동기적으로..

IT/JavaScript 2024.09.05

API

● API - Application Programming Interface- 어플리케이션 간의 서비스 계약- 프로그래밍에서 프로그램 작성을 위한 일련의 서브프로그램- 프로토콜 등을 정의해 상호 작용을 하기 위한 인터페이스 사양- API는 소프트웨어 개발에서 호환성을 위해 지켜야 하는 추상적인 원칙- 여러 기업과 개발자들이 서로의 프로그램이 호환되도록 합의한 원칙- 프로그램에 플러그인 형태로 설계된 API가 적용되면, 이미 작성되어 컴파일되고 완성된 프로그램의 수정없이 프로그램의 기능을 추가하는 것이 가능하다- Internet Explorer, 파이어폭스, 크롬과 같은 웹 브라우저 프로그램의 플러그인, 애드온과 같은 것이 바로 이러한 형식의 플러그인 API를 사용해 구현된 것이다-  API는 소스 코드 수..

IT/IT 2024.09.05

CDN

● CDN - Content Delivery Network- 지리적 제약 없이 전 세계 사용자에게 빠르게 콘텐츠를 전송하는 기술- 프록시 서버에서 출발한 웹 캐시의 클라우드화- CDN 자체가 알아서 사용자와 가장 가까운 캐시 서버에서 정보를 찾아 보내는 것- 서버와 사용자 사이의 물리적인 거리를 줄여 콘텐츠 로딩에 소요되는 시간을 최소화한다 - 오픈소스로 배포되는 플러그인, 모듈을 여러 사이트에서 사용하라고 온라인에 올려놓은 서비스 - 인터넷 서버와 가까운 위치에 파일을 미리 복사해두고 이를 빠르게 다시 가져가 사용하는 방법- 누군가의 JS 파일을 사용하고자 할 때, 코드를 직접 다운받거나 복사하지 않고, CDN 을 이용해 JS 파일을 다운로드 받으면, 한 줄의 코드로 파일을 다운로드 할 수 있다    ..

IT/IT 2024.09.04

Node.js

- JavaScript 코드를 브라우저 밖에서 실행할 수 있게 해주는 런타임 환경- 빈번한 I/O 처리에 우수한 성능- 서버 확장의 용이성- JavaScript 프론트엔드 필수언어로 백엔드까지 작성할 수 있다- 오픈소스 JavaScript 엔진인 크롬 V8에 비동기 이벤트 처리 라이브러리인 libuv을 결합하여 구현되었다- 최신 버전은 기능이 불안정하거나 일부 모듈이 작동하지 않을 수 있으므로 안정성을 보장하고 싶다면 LTS 버전을 사용하는 것이 좋다  [ Windows ]  [ Mac ] node --version- 결과값이 출력되지 않을 경우 https://nodejs.org 에서 프로그램 설치- LTS 버전 권장- 설치 완료 후 버전확인 명령어를 통해 설치 완료 확인  ● Visual Studio ..

IT/JavaScript 2024.08.23

JSON

● JSON의 key를 배열로 반환하는 명령const student = { studno: 12345678, grade: 1, name: 'HYEON', phoneno: '010-1234-5678'};const keys = Object.getOwnPropertyNames(student);console.log(keys); Object.getOwnPropertyNames( JSON이름 ); 출력결과  ▶ ▶ ▶ 추출한 key가 배열이므로 반복문 처리가 가능하다!for ( const k of keys ) { console.group(k); console.log(student[k]); console.groupEnd();} 출력결과 ● 배열끼리의 깊은복사 const a1 = [..

IT/JavaScript 2024.08.23
반응형