일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 거북이 대포 게임
- Spring-Framework
- 계산맞추기 게임
- intellij
- 모두의 파이썬
- 웹 게임을 만들며 배우는 리액트
- 리액트
- node.js로 로그인하기
- 인프런
- DB Browser
- Do it 자바스크립트 + 제이쿼리 입문
- googleColaboratory
- Python
- 따라하며 배우는 노드 리액트 기본 강의
- 노드에 리액트 추가하기
- 자바스크립트
- 타자 게임 만들기
- props
- Colaboratory 글자 깨짐
- JS 개념
- node.js 설치
- 모던자바스크립트
- react
- You are importing createRoot from "react-dom" which is not supported. You should instead import it from "react-dom/client"
- intllij 내 Bean을 찾지 못해서 발생하는 오류
- vs code 내 node
- Concurrently
- react오류
- spring-boot
- ReactDOM.render is no longer supported in React 18. Use createRoot instead
- Today
- Total
목록과거 프로그래밍 자료들/자바(Java) (32)
프로그래밍 삽질 중
※ 쓰레드(Thread) - 하나의 실행 흐름으로 프로세스 내부에 존재 - 프로세스는 적어도 하나의 쓰레드를 가짐 - 프로세스에 비해 필요한 자원이 적음 but 메모리와 파일 등 모든 자원을 프로세스 자원과 공유 ※ 자바 쓰레드 - 자바 가상 머신(JVM)에 의해 스케쥴되는 실행 단위의 코드 블럭 - 쓰레드의 생명주기는 JVM에 의해 관리됨 ※JVM과 멀티쓰레드의 관계 - 하나의 JVM은 하나의 자바 응용프로그램만 실행 - 하나의 응용프로그램은 하나 이상의 쓰레드로 구성 가능 ※ 자바에서 쓰레드 만들기 - java.lang.Thread 클래스 이용 OR java.lang.Runnable 인터페이스 이용 - 생성자 1) Thread() 2) Thread(Runnable target) : 구현객체를 이용해서..
※ 컬렉션 프레임 워크 특징 - 배열 사용 시 고정된 크기 → 불편함 증가 → 해결책 : 연결 리스트(LinkedList) - 컬렉션 : 데이터를 한 곳에 모아 편리하게 저장, 관리하는 가변적인 크기의 컨테이너 - 컬레션 프레임워크 : 객체를 한 곳에 모아 효율적으로 관리하고 편리하게 사용할 수 있도록 제공하는 환경 ※ 컬렉션 프레임 워크 사용 시 주의점 - 컬렉션 요소는 객체만 가능(int, char, double 등 기본타입은 자동 박싱/언박싱 시능으로 사용) - 컬렉션은 제너릭(Generics)기법으로 사용 → 특정 타입만 다루는 것이 아닌 여러 타입으로 변화 가능 → , , : 타입 매개 변수 ex) E에 특정타입으로 구체화 : 정수만 다루는 리스트 : List ※ ArrayList의 특성 - E..
※HashMap 특성 - java.util.HashMap - K : 키로 사용할 요소의 타입 - V : 값을 사용할 요소의 타입 지정 - 키와 값의 쌍으로 구성되는 요소를 다루는 컬렉션 (값을 검색하기 위해서는 반드시 키 필요) - 삽입 및 검색이 빠른 특징을 가짐 → 요소 삽입 : put() 메소드 → 요소 검색 : get() 메소드 - HashMap 문법 HashMap hm = new HashMap(); [예시1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 import java.util.HashMap; import java.util.Map; public class HashMapEx1 { public static void main(String[] a..
※ LinkedList 문법 - LinkedList ll = new LinkedList(); ※Iterator 인터페이스 - 컬렉션의 종류에 관계없이 반복자 이용 시 컬레션에 포함된 객체를 순차적으로 순회 - iterator 객체 이용 시 인덱스 없이 순차적 검색 가능 반환타입 메소드이름 설명 boolean hasNext() 다음 반복에서 사용될 요소가 있으면 true로 반환 E next() 다음 요로소 반환 void remove() 마지막으로 반환된 요소 제거 ※ Set Collection - 순서가 없으면 중복되지 않는 객체를 저장하는 자료구조 지원 - 인덱스가 없고 저장순서 무시 [예시1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 2..
※ 제너릭의 필요성 - 일반화된 타입 매개 변수로 클래스나 메소드를 작성하는 기법 → 하나의 코드로 모든 종류의 데이터 타입을 다룰 수 있음 → 컴파일 할 때 타입을 점검하기 때문에 실행 도중 발생할 오류 사전 방지 → 불필요한 타입 변환 없이 프로그램 성능 향상 - 제너릭 문법 제너릭클래스 참조변수 = new 제너릭클래스 (); - 제너릭 제약 → 기초타입(int, byte 등)을 제너릭 인수로 사용 불가 예) ArrayList al = new ArrayList(); → 컴파일 오류 발생 [문제 예시] 1234567891011121314151617181920212223242526272829303132import java.util.ArrayList; public class MyClass { String ..
※ 상속(inheritance) 사용시 주의할 점 - 상속 : 상위 클래스 특성(필드, 메소드)을 하위 클래스에 물려주는 것 - 슈퍼 클래스 : 특성을 물려주는 상위 클래스 - 서브 클래스 : 특성을 물려받는 하위 클래스 - 오버라이딩 : 슈퍼 클래스의 특성(메소드) 수정 * 슈퍼 클래스의 private 멤버는 상속되지 않음, 서브 클래스에서 직접 접근 불가 → 슈퍼 클래스의 private 멤버는 슈퍼 클래스의 메소드를 통해 접근 - 자바의 접근지정자는 public, protected, default, private * 각 특징은 '접근지정자와 접근자(getter), 설정자(setter) 설명 및 문제 참고' → 상속 관계에서 주의할 접근자 : private, protected - super() : 서브..
※ 접근지정자란? - 종류는 4가지(private, default, protected, public) 접근지정자 접근 범위 적용 대상 private 정의된 클래스 내에서만 접근 가능 상속받은 하위 클래스에서도 접근 불가 default 같은 패키지 내에서 접근 가능 protected 같은 패키지 내에서 접근 가능 다른 패키지에서 접근 불가능하나 상속을 받은 경우 하위 클래스에서는 접근 가능 public 패키지 내부, 외부 클래스에서 접근 가능 ※ getter(접근자)와 setter(설정자) 사용시 주의할 점 - 클래스 내부에 캡슐화된 멤버를 외부에서 사용할 필요가 있을 때 사용 - 접근자 : private으로 지정된 필드 값을 반환 - 설정자 : 값을 변경, 공개된 메소드 - 일반적으로 접근자는 get, ..
※ Static(정적)멤버 사용시 주의할 점 - static 키워드: 클래스의 필드들을 공유하게 됨(동일한 클래스의 객체들에 의해 공유) - static 변수(클래스 변수) : static 키워드로 지정하여 객체마다 생성하는 것이 아니라 클래스 당 하나만 생성됨 - 객체 내부가 아닌 별도 공간에서 생성 - static 형식 ex) static int m; static void g() {} - 전역변수와 전역함수를 만들 때 사용 : 자바의 캡슐화 원칙(캡슐처럼 포장해 세부내용 외부가 알 수 없음) 지킴- static 메소드는 오직 static 멤버만 접근 가능- static 메소드 내에서 this키워드 사용 불가 ※ 인스턴스 멤버 사용시 주의할 점- 멤버는 객체마다 별도로 존재(각각 공간 유지)- 객체 생..