
추상클래스-실체클래스를 외우려니까 이름처럼 너무 추상적이어서 ^^ 이해하기 어려웠는데 그림처럼 흐름을 그리면서 생각하니까 이해가 아주 쏙쏙 되었다. 같이 흐름대로 이해해보아요! 1. 추상클래스는 무엇일까? 💇🏻♀️ 클래스.... 항상 만드는게 클래스라서 단어는 아주 익숙하다. 일단 클래스는 일반 클래스와 추상 클래스로 나뉜다. 추상클래스는 A클래스, B클래스, C클래스, ..... 수많은 클래스들 중 "비슷한 필드와 메서드를 공통적으로 추출해" 만들어진 클래스다. 클래스 구현부 내부에 추상 메서드가 하나 이상 포함되거나 abstract로 정의된 경우를 말한다. 처음부터 이론적으로 접근하니까 너무 어렵다. 쉽게 설명하자면! 게임을 처음 시작하면 게임 캐릭터를 먼저 만들면서 시작하게 된다. 보통 게임에서 ..

REST.... REST API .... RESTful ...... 공통적으로 모두 사용되는 REST 라는 단어‼ 대체 무슨뜻인가요? 📢 REST “Representational State Transfer”의 약자로 소프트웨어 프로그램 아키텍처의 한 형식이다. 장비간 통신을 위해 복잡한 방법을 사용하는 대신 간단하게 HTTP를 이용하는 것이 목적이다. ⇒ 쉽게 생각해서 최근의 서버 프로그램은 다양한 브라우저, 안드로이폰, 아이폰 등 모바일 디바이스에서도 통신을 할 수 있어야 하기 때문에 사용함! 🙄소프트웨어 프로그램 아키텍처..? 참 어려운 말이다 ㅎㅎ 애초에 이게 광범위하고 정확하게 딱 떨어져서 어떤 단어다 라고 정의할 수 없는 단어라 그렇다. 쉽게 설명하자면.. 소프트웨어 시스템을 만드는데 시스템의 ..

프로젝트 기간 2021/04/23 ~ 2021/06/10 프로젝트 이름 🧳 냉장고에 뭐있지 개발환경 Language : Java DBMS : Oracle Prontend : HTML, CSS, javascript, servlet Library : Jquery, ojdbc Server : Apache Tomca 8.5 IDE : Eclipse, MySQL, VS Code 💡기능구현 리스트 1. 메인페이지 1-1. 메인 페이지 : 메인배너, 추천 사용자 슬라이드 1-2. 헤더 : 검색, 메뉴카테고리, 로그인, 회원가입 연결 1-3. 레시피 검색 1-4. 레시피 정렬 : ajax를 이용한 인기순 정렬 2. 로그인 2-1. 로그인 2-2. 로그아웃 2-3. 아이디 찾기 2-4. 비밀번호 재설정 3. 회원가입 4..

🍪💎쿠키와 세션을 사용하는 이유 HTTP 프로토콜을 보완하기 위해서 사용! HTTP 프로토콜의 특징 비연결지향(Connectionless) 클라이언트가 요청(Request)을 ➡ 서버에 보내고, 서버는 ➡ 클라이언트에게 적절한 응답(Response)을 주고 연결(Connection)을 끊는다. HTTP가 TCP위에서 구현되었기 때문에(TCP는 연결지향, UDP는 비연결지향) 연결지향적이라고 할 수 있다는 얘기가 있어 논란이 있지만, 아직까지는 네트워크 관점에서 keep-alive는 옵션으로 두고, 서버측에서 비연결지향적인 특성으로 커넥션 관리에 대한 비용을 줄이는 것이 명확한 장점으로 보기 때문에 비연결지향으로 알아두었다. IP 계층에는 출발지 주소와 목적지 주소가 존재하고, TCP 계층에는 출발지 포트..
1. 이차원 배열 선언하기 2차원 배열은 [ ] (대괄호)를 두 번 사용하여 선언함! 첫 번째 대괄호에는 [세로 크기=행], 두 번째 대괄호에는 [가로 크기=열]를 지정한다. *일반적으로 2차원 공간은 가로x세로로 표기하지만, 배열로 만들 때는 세로x가로로 표기한다.* 자료형 배열이름[][]; 자료형[] 배열이름[]; 자료형[][] 배열이름; int arr1[세로][가로]; int[세로] arr2[가로]; int[세로][가로] arr3; 2. 이차원 배열 할당 (크기 지정) 행크기와 열크기 동시에 지정 가능함! 배열이름 = new 자료형[행크기][열크기]; arr3 = new int[2][3]; 3. 2차원 배열을 선언하면서 초기화도 같이 할 수 있다. { } (중괄호)안에 가로 요소들을 먼저 묶어주고,..

변수 대신 배열을 쓰는 이유가 뭘까? 변수는 "자료형의 값 하나만"을 담을 수 있고, 예를들어 int a = 10; a = 20; 배열은 "자료형의 값 여러개"를 담을 수 있는 개념이다. int[] a = new int[3]; 여러개의 데이터를 담을 때를 대비해서 배열을 만들었다! (= 세개의 상자를 만들래!) 여기에 [0] [1] [2] 상자마다 번호가 생성된다. a[0] = 5; a[1] = 10; a[2] = 15; 여기서, 변수 대신 배열을 쓰는 이유! 변수는 일일히 매번 선언해야 하는 번거로움과, 여러개의 변수 선언은 오류가 날 가능성이 매우 높은 문제가 있다. int num1 = 0; int num2 = 0; int num3 = 0; int num4 = 0; int num5 = 0; 또, 변수..
배분율을 계산하는 식이 있다. double dividend1 = income * 0.5; double dividend1 = income * 0.3; double dividend1 = income * 0.2; 각 사람당 배분율 = 수입 * 비율 double rate1 = 0.5; double rate2 = 0.3; double rate3 = 0.2; double dividend1 = income * rate1; double dividend2 = income * rate2; double dividend3 = income * rate3; 변수를 먼저 선언해서 각각의 사람의 권리를 변수화시킨다. 그런데 코드가 길어지면서 변수가 많아질수록 변수가 더럽혀질 가능성이 높아진다. 이럴 때 배열을 이용해보자 새롭게 변수..
- Total
- Today
- Yesterday
- 티스토리챌린지
- port
- 스프링오류
- addFilterBefore
- bucket4j
- junit5
- Java
- jvm warm-up 전략
- n+1
- Kotlin
- MultipleBagFetchException
- JPA
- 자바 어플리케이션 실행 과정
- 오블완
- Spring Security
- 배열
- Cannot construct instance of
- dto 클래스 생성자
- redisson 분산락
- Linux
- spring boot 3
- 스프링 스케줄링
- ChatGPT
- array
- 추상클래스
- checkout
- QueryDSL
- Git
- FetchJoin
- MongoDB
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |