Java 20

Java online LiveStudy 후기

Java online LiveStudy 후기 설명 라이브 스터디 유튜브로 진행하는 라이브 스터디 운영 프로젝트입니다. 이슈 게시판에 과제를 올리고 댓글로 과제 풀이 링크를 제출하시면 검토해 드리고 라이브 방송으로 피드백을 드립니다. 현재, 자바 기초 스터디를 진행중입니다. LiveStudy Link 자바 기초 스터디 수료 기준 및 선물 전체 18주 과정의 스터디로, 스터디 과제 제출율 80%를 넘긴 참여자에게 수료 기념으로 티셔츠를 선물해 드립니다. 참고 자료 책, 블로그, 인터넷 강의 뭐든지 참고해도 좋습니다. 저는 개인적으로 Java in a Nutshell을 참고하고 있습니다. Java in a Nutshell을 구하고 싶은 분들은 지난 2020년 11월 13일 자바 뉴스에서 소개한 헙블 북 번들에..

스터디/LiveStudy 2021.03.01

8주차 과제: 인터페이스

목표 자바의 인터페이스에 대해 학습하세요. 학습할 것 (필수) 인터페이스 정의하는 방법 인터페이스 구현하는 방법 인터페이스 레퍼런스를 통해 구현체를 사용하는 방법 인터페이스 상속 인터페이스의 기본 메소드 (Default Method), 자바 8 인터페이스의 static 메소드, 자바 8 인터페이스의 private 메소드, 자바 9 인터페이스 다른 클래스를 작성할 때 기본이 되는 틀을 제공하면서, 다른 클래스 사이의 중간 매개체 역할까지 담당하는 추상 클래스보다 추상적인 추상 클래스를 의미한다 자바에서 추상 클래스는 추상 메소드뿐만 아니라 생성자, 필드, 일반 메소드도 포함될 수 있지만 인터페이스는 오로지 추상 메소드와 상수만을 포함할 수 있다.(JDK 1.8 이전) 인터페이스와 추상 클래스를 사용하는 이..

스터디/LiveStudy 2021.01.04

1주차 과제: JVM은 무엇이며 자바 코드는 어떻게 실행하는 것인가.

본 게시글은 백기선님의 자바 라이브 스터디를 진행하기 위한 정리 자료입니다 1주차 과제: JVM은 무엇이며 자바 코드는 어떻게 실행하는 것인가. JVM이란 무엇인가 자바 가상 머신(JVM, Java Virtual Machine) 자바 바이트 코드를 실행시키기 위한 가상 머신이라고 할 수 있다. 자바로 작성된 모든 프로그램은 JVM에서만 실행이 가능하고 자바 프로그램을 실행하기 위해서는 반드시 JVM이 있어야한다 C 프로그램은 기계어로 컴파일하고 하드웨어 기종에 맞게 각각 컴파일 되어있어야 한다. 즉 '플랫폼에 종속적'이다. Java 같은 경우 JVM만 설치 되어있으면 기기의 기종에 상관없이 사용이 가능하며 한번만 컴파일이 가능하고 플랫폼에 독립적이다. 출처 : https://www.artima.com/i..

스터디/LiveStudy 2020.11.20

[Java] 이것이 취업을 위한 코딩테스트다 BFS - 미로탈출

import java.util.*; class Node { int x ; int y ; public Node(int x, int y) { this.x = x; this.y = y; } } public class _2MazeEscape { private static int n = 5; private static int m = 6; private static int[][] edges = { {1, 0, 1, 0, 1, 0}, {1, 1, 1, 1, 1, 1}, {0, 0, 0, 0, 0, 1}, {1, 1, 1, 1, 1, 1}, {1, 1, 1, 1, 1, 1} }; public static void main(String[] args) { bfs(0, 0); System.out.println(edges[n..

Java/알고리즘 2020.11.12

[Java] 이것이 취업을 위한 코딩테스트다 DFS - 음료수 얼려먹기

public class _3frozenDrinks { private static int n = 4; private static int m = 5; private static boolean[][] visited = new boolean[n][m]; private final static int[][] edges = { {0, 0, 1, 1, 0}, {0, 0, 0, 1, 1}, {1, 1, 1, 1, 1}, {0, 0, 0, 0, 0} }; private static int cnt = 0; public static void main(String[] args) { for (int i = 0; i < n; i++) { for (int j = 0; j < m; j++) { if (dfs(i,j)) { cnt++;..

Java/알고리즘 2020.11.12

[Java] 이것이 취업을 위한 코딩테스트다 구현 - 게임 개발

Java import java.util.Arrays; import java.util.Scanner; public class _3GameDev { private static int[] xyArr,xyChar; private static int cnt = 0; private static int length; private static int[] dx = {-1,0,1,0}; private static int[] dy = {0,1,0,-1}; private static int[][] arr,dp; private static int[] point = new int[2]; private static int Direction ; public static void main(String[] args) { System...

Java/알고리즘 2020.11.07

[Java] 이것이 취업을 위한 코딩테스트다 구현 - 왕실의 나이트

Java public class night { public static void main(String[] args) { System.out.println(solution("h8")); } public static int solution(String s){ int row = Integer.parseInt(s.charAt(1)+"")-1; //행 int column = s.charAt(0)- 97; //열 int cnt = 0; //결과 int[][] steps = {{-2,-1}, {-2 ,1}, {-1,2},{-1,-2},{2,1},{2,-1},{1,-2},{1,2}}; // 이동할 수 있는 8가지 방향 for (int i = 0; i < steps.length; i++) { if (row + steps..

Java/알고리즘 2020.11.07

[Spring] Spring IoC Container 연동

Spring IoC Container 연동 Servlet Application 에 Spring 연동하기 서블릿에서 스프링이 제공하는 IoC 컨테이너 활용하는 방법 스프링이 제공하는 서블릿 구현체 DispatcherServlet 사용하기 IoC 컨테이너 활용하는 예제 의존성 추가 org.springframework spring-webmvc 5.1.3.RELEASE web.xml 수정 기존 listener 제거후 아래 추가 org.springframework.web.context.ContextLoaderListener AppConfig 생성 import org.springframework.context.annotation.ComponentScan; import org.springframework.contex..

Spring/Spring MVC 2020.11.07

[Spring] Servlet listener, filter

Servlet listener,filter Servlet listiener 웹 애플리케이션에서 발생하는 주요 이벤트를 감지하고 각 이벤트에 특별한 작업이 필요한 경우에 사용할 수 있다. 서블릿 컨텍스트 수준의 이벤트 컨텍스트 라이프사이클 이벤트 컨텍스트 애트리뷰트 변경 이벤트 세션 수준의 이벤트 세션 라이프사이클 이벤트 세션 애트리뷰트 변경 이벤트 Servlet filter 어떠한 요청이 들어왔을때 servlet으로 보내고, 또 서블릿이 작성한 응답을 클라이언트로 보내기 전에 특별한 처리가 필요한 경우에 사용할 수 있다. 체인 형태의 구조 Servlet Listener는 Servlet Container 영역 위에있다 Servlet Container에서 바로 Servlet에 가는 것이 아니라 Filter를..

Spring/Spring MVC 2020.11.06

[Spring] Servlet 서블릿

Servlet HTTP 통신 기반의 클래스를 살펴보면 어노테이션 기반, 매개변수나 서블릿 클래스가 활용된다 자바 엔터프라이즈 에디션은 웹 애플리케이션 개발용 스펙과 API를 제공한다. Request 당 Thread를 사용하게 된다. 가장 중요한 클래스 중 하나가 HttpServlet이다. Servlet은 웹 프로그래밍에서 클라이언트 요청을 처리하고 처리 결과를 클라이언트에 전송하는 기술이다. CGI(Common gateway Interface) 자바로 구현된 서블릿 등장 전에 사용하던 기술이다. 별도로 제작된 웹 서버와 프로그램간의 교환 방식으로 어떠한 프로그래밍 언어로도 구현이 가능하고 , 별도로 만들어 놓은 프로그램에 HTML의 GET, POST방법으로 클라이언트 데이터를 환경변수로 전달하고 프로그램..

Spring/Spring MVC 2020.11.06