백엔드
-
Java Study [2022-08-25] - 객체지향프로그래밍(인터페이스 응용)백엔드 2022. 8. 26. 22:05
📌 Java Study 🔸 2022-08-25 목요일 [인터페이스 응용] 1. 인터페이스 응용 하나의 구현 클래스가 여러 개의 인터페이스를 상속받을 수 있음 인터페이스가 여러 개 있을 시 모두 상속받아 하나의 인터페이스를 만들 수 있음 X, Y interface public interface X { void x(); } public interface Y { void y(); } MyInterface 인터페이스(상속) public interface MyInterface extends X, Y { void myMethod(); } MyClass 클래스 public class MyClass implements MyInterface { @Override public void x() { } @Override pu..
-
Java Study [2022-08-24] - 객체지향프로그래밍(인터페이스 응용)백엔드 2022. 8. 25. 23:41
📌 Java Study 🔸 2022-08-24 수요일 [인터페이스 응용] 1. 인터페이스 응용 default void description() { System.out.println("정수 계산기를 구현합니다."); } @Override public void description() { System.out.println("재정의 한 description"); } 한 클래스에 description() 메서드를 구현하고, 다른 클래스에서 오버라이드 한 즉, 재정의 한 description() 메서드 구현 calc.description(); 찍어보면, 재정의 한 description이 출력 인스턴스 생성과 상관없이 static으로 int total을 선언해놓으면, 인터페이스 타입으로 바로 가져다 사용가능 int..
-
Java Study [2022-08-23] - 스프링부트 프로젝트, 객체지향프로그래밍 인터페이스(인터페이스 용어 정리 및 상속 관련 내용 정리)백엔드 2022. 8. 24. 21:30
📌 Java Study 🔸 2022-08-23 화요일 [스프링 부트 프로젝트 & 객체지향프로그래밍] 1. Spring 초기 🔖 [오류 발생] Cannot resolve symbol 'String' 인텔리제이 프로젝트를 닫고 종료 후 다시 Open 했더니 위와 같은 오류로 모든 코드 구문 String 에러 발생 해결 원인 : 인텔리제이에 현재 JDK가 설정되어 있지 않은 문제 혹은 JDK 폴더가 날아간 문제 해결 방법 : 인텔리제이 - File - Project Structure - SDK 설정(설치된 JDK 버전) 에러 발생 원인 : SDK 미 설정 해결 : SDK 세팅 2. 인터페이스 요소들 상수 : 선언된 모든 변수는 상수로 처리됨 메서드 : 모든 메서드는 추상 메서드 디폴트 메서드 : 기본 구현을 ..
-
Java Study [2022-08-22] - 스프링부트 프로젝트(Http 통신 원리, GetParameter, @RequestParam)백엔드 2022. 8. 23. 23:22
📌 Java Study 🔸 2022-08-22 월요일 [스프링 부트 프로젝트] 1. Spring 초기 이전 http://localhost:8080/api/getMethod을 통해 나온 크롬 페이지에서 검사 network - Disable cache - 새로 고침 🔖 http://localhost:8080/api/getMethod 검사 network Request Method 방식으로 GET 방식 Status Code 값으로 정상 통신을 의미하는 코드 200 Response 탭에서 정상적으로 Hi getMethod 출력을 확인할 수 있음 사용자가 서버에 Http 통신을 통해 데이터를 요청하였고, 서버는 Hi getMethod라는 텍스트를 Http를 통해 Return 위 일련의 과정이 통신 앞으로 admin..
-
Java Study [2022-08-21] - 스프링부트 프로젝트(admin, localhost:8080/api/getMethod 확인 및 빌드과정 오류 해결)백엔드 2022. 8. 23. 01:01
📌 Java Study 🔸 2022-08-21 일요일 [스프링 부트 프로젝트] 1. Spring 초기 사용자로부터 접속을 받아내기 위해 주소를 설정 주소의 묶음인 Cotroller package 생성 패키지 하위로 GetController 생성 스프링에게 이곳을 Cotroller로 활용한다는 것을 인지시키기 위해 지식자 Annotation(@) RestController 생성 이곳으로 들어올 api 주소를 맵핑하기 위해 RequestMapping 생성 @RequestMapping("/api") api로 지정하게 되면 localhost:8080 포트에 api까지 주소가 매칭 사용자의 요청을 한 가지 메서드로 받아들일 수 있음 public String getRequest() { } @RequestMappin..
-
Java Study [2022-08-20] - 스프링부트 이론(소켓 통신, HTTP 통신, Rest API 일부)백엔드 2022. 8. 21. 21:33
📌 Java Study 🔸 2022-08-20 토요일 [스프링 부트 프로젝트] 1. 통신이란 Socket 통신 접속을 계속 유지하여, 데이터를 전달 서버의 자원에 따라서 연결될 수 있는 클라이언트의 숫자가 한정됨 실시간 정보 교환에 사용하며 HTTP보다 속도가 빠름 HTTP 통신 클라이언트의 요청이 있을 때만 데이터 응답을 전달 불필요한 자원의 점유를 없애 다른 접속을 원활하게 하여 많은 데이터를 처리 데이터 요청 후 응답이 오면 연결이 끊어짐 원리 : 사용자 혹은 또 다른 서버에서 소켓, Http 방식으로 서버에 요청하면, 해당 서버는 데이터를 잘 가공하여 이에 대한 응답을 전송해야 됨 이 때, HTML, CSS, JSON, XML 등의 포맷을 통신 시 요청할 때 어떠한 데이터를 달라고 반드시 명시하여..
-
Java Study [2022-08-19] - 객체지향프로그래밍(인터페이스 & strategy pattern 예제)백엔드 2022. 8. 20. 22:41
📌 Java Study 🔸 2022-08-19 금요일 [인터페이스를 활용한 다형성 구현] 1. 인터페이스의 역할 클라이언트 프로그램에 어떤 메서드를 제공하는지 알려주는 명세(Specification) 또는 약속 한 객체가 어떤 인터페이스의 타입이라 함은 그 인터페이스의 메서드를 구현했다는 의미 클라이언트 프로그램은 실제 구현 내용을 몰라도 인터페이스의 정의만 알면 그 객체를 사용할 수 있음 인터페이스를 구현해 놓은 다양한 객체를 사용함 - 다형성 JDBC를 구현한 오라클, MSSQL 라이브러리 등 쉽게 말해, ABC 라는 인터페이스에 구현되어 있는 a(), b(), c() 메서드가 있다는 명세를 확인할 수 있음 추상 클래스와의 차이점은 공통되는 모듈이 있을 수도, 없을 수도 있고, 클래스이기에 하나만 상..
-
Java Study [2022-08-18] - 객체지향프로그래밍(인터페이스)백엔드 2022. 8. 19. 01:55
📌 Java Study 🔸 2022-08-18 목요일 [인터페이스] 1. 인터페이스 - 추상 메서드 - 상수 - 디폴트 메서드 - 정적 메서드 - private 메서드 인터페이스 : 어떠한 객체에 대한 명제, 어떠한 메서드들을 제공할 것인지 설명한 가이드 역할 인터페이스 선언과 구현 public interface Calc { // 인터페이스에서 선언한 변수는 doubl PI = 3.14; // 컴파일 과정에서 상수로 변환 int ERROR = -999999; int add(int num1, int num2); // 인터페이스에서 선언한 메서드는 int substract(int num1, int num2); // 컴파일 과정에서 추상 메서드로 변환 } PI는 상수의 의미로 이탤릭체로 변경 컴파일 과정에서 ..