본문 바로가기

전체 글

(44)
REST(Representational State Transfer) API REST(Representational State Transfer) API  REST API ① 개념 소프트웨어 프로그램 아키텍처의 한 형식으로 자원을 이름으로 구분하여 해당 자원의 상태 및 정보를 주고 받는 것웹의 기존 기술과 HTTP 프로토콜을 그대로 활용하기 때문에 웹의 장점을 최대한 활용할 수 있다.HTTP URI를 통해 자원을 명시하고 HTTP Method를 통해 해당 자원에 대한 CRUD Operation을 적용하는 것웹의 모든 자원에 고유한 ID인 HTTP URI를 부여한다.② 등장 배경 단순히 하나의 플랫폼만 지원하면 되었던 과거와 달리, 최근에는 여러 웹 브라우저 및 모바일 애플리케이션과의 통신에도 대응해야 하는 상황을 맞이했다.플랫폼에 맞추어 새로운 서버를 만드는 수고를 들이지 않기 위..
재귀 알고리즘 재귀 알고리즘어떤 사건이 자기 자신을 포함하고 다시 자기 자신을 사용하여 정의될 때 재귀적이라고 한다.public class Factorial { public static int factorial(int n) { if (n > 0) { return n * factorial(n - 1); } else { return 1; } } public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.print("정수를 입력하세요 : "); int n = scanner.nextInt(..
Interface Interface다른 클래스를 작성할 때 기본 틀을 제공하면서 클래스 사이의 매개 역할까지도 담당하는 일종의 추상 클래스추상 메소드와 상수만을 포함한다.다중 상속이 가능하다.필드는 public static final로, 메소드는 public abstract로 반드시 선언해야 한다.interface Car { public static final int speed = 50; public abstract void drive();}class Jeep implements Car { private String name; private int speed; Jeep(String name, int speed) { this.name = name; this.speed = ..
추상 클래스 (Abstract Class) 추상 클래스 (Abstract Class)추상 메소드를 포함하며 상속받는 자식 클래스에서 추상 메소드를 오버라이딩하여 완성하도록 유도하는 클래스이다.abstract 예약어를 사용한다.인스턴스화가 불가능하다.추상 클래스를 상속받는 자식 클래스에서는 추상 메소드를 모두 구현해야한다.다중 상속이 불가능하다.public abstract class Car { public String name; public int speed; Car(String name, int speed) { this.name = name; this.speed = speed; } public abstract void drive(); public abstract void stop();} p..
Serialization (직렬화) Serialization (직렬화)자바 시스템 내부에서 사용되는 객체 및 데이터를 외부 자바 시스템에서도 사용할 수 있도록 바이트 형태로 데이터를 변환하는 기술(직렬화) + 바이트로 변환된 데이터를 다시 객체로 변환하는 기술(역직렬화)JVM 메모리에 상주(힙 또는 스택)되어 있는 객체 데이터를 바이트 형태로 변환하는 기술 + 직렬화된 바이트 형태의 데이터를 객체로 변환하여 JVM으로 상주시키는 형태클래스를 파일에 읽히고 쓸 수 있도록 하거나 다른 서버로 보내고 받도록 하기 위해서 구현해야 한다.① Serialization 구현 public class SerialUser implements Serializable { static final long serialVersionUID = 55555L; ..