일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 자료구조
- BFS
- AWS
- 토이프로젝트
- 완전탐색
- 스터디
- Spring Boot
- ELB
- 백준알고리즘
- sort
- 리액트
- EventListener
- EC2
- 다익스트라 알고리즘
- java
- Algorithm
- 서버구축
- url parsing
- Router
- spring
- 브루트포스
- 동적프로그래밍
- 알고리즘
- 백준
- mysql
- nodejs
- 라우터
- react
- 정렬
- 탐욕법
- Today
- Total
목록Java (6)
공부하는 블로그
Servlet 서블릿(Servlet)은 웹 페이지를 동적으로 생성하여 응답하는 서버측의 자바 프로그램이다. 여기서 동적으로 생성한다는 것은 어떤 의미일까? 간단한 예로 우리가 웹 페이지에서 로그인을 한다고 가정해보자. 우리는 웹 서버로 아이디, 비밀번호와 함께 로그인 시켜달라고 서버측으로 요청하게 된다. 서버측에서는 우선 DB에 저장된 아이디와 비밀번호가 요청과 일치하는지 판단하여 일치하는 경우에는 로그인된 페이지를, 불일치하는 경우에는 로그인 실패 페이지를 응답하게 된다. 이러한 일련의 과정은 동적이다고 할 수 있다. 즉, 각기 다른 사용자의 요청에 따라 서버측에서 데이터를 조회하고 경우에 따라 알맞게 웹 브라우저에 페이지를 생성해주는 것을 '동적이다'라고 하며 이러한 역할을 수행하는 것이 바로 서블릿..
Abstract Class? 추상 클래스(Abstract Class)는 하나 이상의 추상 메서드를 포함하는 클래스이다. 여기서 추상 메서드란 정의만 내려진 채 내용이 없는 메서드이다. 즉, 기능(로직)은 없이 뼈대(결과값과 매개변수의 자료형)만 있는 메서드이다. 이러한 추상 메서드는 추상 클래스를 상속 받은 서브 클래스에서 구현된다. 자바에서 추상 클래스와 추상 메소드를 선언하기 위해서는 접근제어자 뒤에 abstract를 붙여주면 된다. Interface? 인터페이스(Interface)는 추상 메서드로만 구성되어 있으며 추상 클래스와 마찬가지로 인터페이스에서 선언된 추상 메서드는 서브 클래스에서 구현된다. 자바에서 예약어로 class 대신 interface를 사용하며 extends 대신 implement..
객체 지향 프로그래밍(Object Oriented Programming, OOP)은 각각의 기능들을 객체화(클래스화)시켜 메인함수에서는 객체화시킨 기능들을 호출해서 사용하는 프로그래밍 기법으로 캡슐화, 상속, 다형성의 특징을 가지고 있다. 캡슐화(Encapsulation) 캡슐화는 일반적으로 변수와 함수를 클래스로 묶는 작업을 말한다. 캡슐화를 할 때에는 무작위로 클래스를 지정하는 것이 아니라 연관된 목적을 가지고 있는 변수와 함수별로 작업을 해야 한다. 또한, 캡슐화는 외부의 잘못된 접근으로 값이 변하는 것을 막기 위해 클래스 내의 변수나 함수를 감추거나 드러내는 은닉성을 지니고 있다. 이러한 은닉성은 자바에서 접근제어자를 통해 실현시킬 수 있다. 접근제어자(Access Modifier) · publi..
변수(Variable) 변수는 컴퓨터 프로그래밍에서는 아직 알려지지 않거나 어느 정도까지만 알려져 있는 양이나 정보에 대한 상징적인 이름이다. 쉽게 말해 불변량인 상수와는 다르게 상황에 따라 값이 변하는 수, 값을 저장할 수 있는 메모리공간이라 생각하자. 이러한 변수를 프로그래밍을 하기 위해 사용하려면 변수를 선언하고 초기값을 지정해주어야 한다. * 변수 선언이 안되는 경우 1. 예약어는 이미 정의가 되어 있으므로 변수명으로 사용이 불가 ex. int char (X) 2. 앞서 선언된 변수명은 다시 선언 불가(중복 불가) 3. 연산자는 변수명에 포함 불가 4. 변수명의 맨 처음은 숫자 사용이 불가 cf. 한글로 선언은 가능하지만 사용하지 않는다. 자료형(Data Type) 자료형은 프로그래밍을 할 때 쓰..
JAVA? 자바(Java)는 제임스 고슬링(James Gosling)과 다른 연구원들이 개발한 객체 지향적 프로그래밍 언어이다. 자바를 다른 컴파일언어와 구분 짓는 가장 큰 특징은 컴파일된 코드가 플랫폼 독립적이라는 점이다. 자바 컴파일러는 자바 언어로 작성된 프로그램을 바이트코드라는 특수한 바이너리 형태로 변환하며 이 바이트코드를 실행하기 위해서는 JVM이라는 특수한 가성 머신이 필요한데, 이 가상 머신은 자바 바이트 코드를 어느 플랫폼에서나 동일한 형태로 실행시킨다. 따라서 자바로 개발된 프로그램은 CPU나 운영체제의 종류에 관계없이 JVM을 설치할 수 있는 시스템에서는 어디서나 실행할 수 있으며 이 점이 웹 애플리케이션의 특성과 맞아 떨어져 폭팔적 인기를 끌게되었다. * JVM에 관한 설명은 앞선 ..
Java를 사용하여 개발하기 위해서는 Oracle사에서 제공하는 JDK를 설치해야 한다. JDK 설치를 위해서는 Oracle 회원가입이 필요하다. ※ JVM? JRE? JDK? JVM : Java Virtual Machine JVM은 자바 가상머신의 약자로, 실행 환경의 규격을 제공하여 자바 소스코드로부터 만들어지는 자바 바이너리파일(.class)을 읽어내고 검증하여 실행할 수 있다. 하드웨어나 운영체제에 따라서 달라질 수 있는 호환성의 문제는 운영체제 버전에 따라서 만들어진 JVM이 알아서 해결한다. 즉 하나의 자바 프로그램을 만들면 어떤 환경에서도 실행할 수 있도록 하는 것이 JVM이다. JRE : Java Runtime Environment JRE는 자바 실행 환경의 약자로 자바 프로그램을 동작시킬..