자바
-
자바 기본 정리 - <JAVA 프로그래밍 면접 이렇게 준비한다>자바/Java 공부 2018. 12. 27. 14:32
프롤로그를 읽으면서 자바 기본 개념을 공부하고 있습니다. 웹 개발자가 되기 위해서 공부해야 하는 것들이 잘 정리된 책이라고 생각합니다.이 책만으로는 깊이있는 공부는 어렵습니다. 다만 중요한 개념들이 요약, 정리되어 있어서 이 책을 참고로 공부 방향을 잡고 좀 더 깊이 있는 공부를 할 수 있다고 생각합니다. 공부를 어떻게해야 할지 고민이었는데 이 책이 많은 도움이 되었습니다. 8장-자바 기본을 읽으면서 내용을 정리하고 이해가 안되는 부분은 추가로 공부하여 작성하고 있습니다. 원시 타입(Primitive type)기본 타입(원시 타입)의 종류 char, byte, short, int , long, float, double, boolean 등 8개이다.원시 타입은 항상 값이 있는 상태다. 참조 타입(객체)처럼..
-
자바 JVM, 메모리 구조, 가비지 콜렉션자바/Java 공부 2018. 3. 10. 16:36
자바 가상머신(JVM)?자바 프로그램이 실행되는 플랫폼이다. 자바 코드의 메인 메서드를 호출한다.어플리케이션이 플랫폼에 상관 없이 독립적으로 실행되도록 한다.자바 코드(.java)는 컴파일러에 의해 바이트코드(.class)로 변환 된 후 JVM에 의해 실행된다. JVM은 JRE에 포함되어 있다. 가비지 컬렉션과 메모리를 포함한다. 자바 메모리 구조메서드 영역(Method area)JVM이 .class 파일을 읽고 클래스(클래스 변수, 메서드, 생성자), static 변수에 대한 정보를 저장한다. 모든 JVM 스레드가 공유하므로 Not thread-safe이다. 힙(heap)모든 인스턴스와 배열이 저장되는 공간, 프로그램 실행 중 생성되는 인스턴스가 저장된다. (인스턴스는 new 키워드로 초기화한 클래스이..
-
자바 - 객체지향 언어란?자바/Java 공부 2018. 3. 10. 15:34
객체지향이란?컴퓨터 역사 초창기에는 주로 과학실험이나 군사실험과 같은 모의실험에 사용되었고 실제세계와 유사한 가상 세계를 구현하려는 과정에서 객체지향 이론이 탄생했다. 객체지향이론의 기본 개념은 '실제 세계는 사물(객체)로 이루어져 있으며, 발생하는 모든 사건들은 사물간의 상호작용이다.' 실제 사물의 속성과 기능을 분석한 다음, 데이터(변수)와 함수로 정의함으로써 실제 세계를 컴퓨터 속에 옮겨 놓은 듯한 가상세계를 구현하고 이 가상세계에서 모의실험을 함으로써 많은 시간과 비용을 절약할 수 있었다. 객체지향이론은 상속, 캡슐화, 추상화 개념을 중심으로 점차 구체적으로 발전되었으며, 1960년대 중반에 객체지향이론을 프로그래밍언어에 적용한 Simula라는 최초의 객체지향언어가 탄생하였다.프로그램의 규모가 점..
-
자바 기본 용어자바/Java 공부 2018. 3. 7. 20:04
변수컴퓨터 언어에서 변수(variable)란, 값을 저장할 수 있는 메모리상의 공간을 의미한다.변수의 값은 바뀔 수 있으며, 하나의 변수에는 단 하나의 값만을 저장할 수 있다. 그래서 값을 여러 번 저장하면 마지막에 저장한 값을 갖게 된다. 변수를 사용하기 위해서는 먼저 변수를 선언해야한다. 변수가 선언되면 메모리 공간에 변수의 타입에 알맞은 크기의 메모리공간이 확보되어, 값을 저장할 준비가 되는 것이다. 변수타입 변수이름; int number; // 정수형 변수 number를 선언한다. 변수의 타입(Type) 변수의 타입은 크게 기본형과 참조형, 2가지로 나눌 수 있는데, 기본형 변수는 실제 값(Data)을 저장하는 반면에, 참조형 변수는 어떤 값이 저장되어 있는 주소를 값으로 갖는다. 기본형(Prim..
-
자바 인프런 - Servlet자바/인프런 인강 2018. 2. 17. 21:21
Servlet이란?CGI(Common Gateway Interface)언어, 동적 웹 어플리케이션 컴포넌트.java 확장자JAVA thread로 동작클라이언트의 요청에 동적으로 작동하고, html로 응답mvc패턴에서 Controller 어노테이션@WebServlet("/HW2") public class Helloworld2 extends HttpServlet { } 어노테이션 방법 설명:https://www.youtube.com/watch?v=s9Le8ypFIfA&t=0s&index=10&list=PLqaSEyuwXkSoeqnsxz0gYWZMihw519Kfr web.xml에서 서블릿 맵핑 경로가 너무 길고, 보안에 취약할 수 있기 때문에 간단하게 맵핑 한다. helloworld com.javalec.ex..
-
자바 인프런 - 웹프로그래밍이란자바/인프런 인강 2018. 2. 17. 11:24
웹프로그래밍이란? 웹프로그래밍은 웹을 기반으로 작동되는 웹 어플리케이션을 구현하는 것.웹은 하이퍼텍스트 구조를 활용해서 수 많은 정보들을 연결해주는 인터넷 서비스의 일종. 인터넷은 전 세계의 컴퓨터가 연결되어 있는 통신망 인터넷이란? 아르파넷은 시험가동을 거친 후 1972년 10월에 워싱턴에서 개최된 제1회 국제컴퓨터통신학술회의에서 시연되었다. 이를 계기로 아르파넷에 대한 관심이 더욱 커지면서 많은 대학과 연구소들이 아르파넷에 편입하기 시작했다. 국제컴퓨터통신학술회의에서 ‘네트워크들의 네트워크’를 의미하는 오늘날과 같은 인터넷(internet)의 개념이 제기되었다는 점도 주목할 만하다. 이를 바탕으로 ARPA의 서프(Vinton Cerf)와 칸(Robert Kahn)은 1974년에 이란 논문을 발간했는데..
-
자바 인프런 - 간단한 채팅프로그램자바/인프런 인강 2018. 2. 16. 16:08
클라이언트가 서버 소켓에 접속한 뒤 입력한 문장을 서버에서 입력 받는 간단한 채팅 프로그램 -서버 소켓 import java.io.BufferedReader;import java.io.InputStreamReader;import java.io.PrintWriter;import java.net.ServerSocket;import java.net.Socket; public class MakeServersocket {ServerSocket serversocket = null;Socket socket = null;PrintWriter writer = null;BufferedReader reader = null;String lineStr; public MakeServersocket() {try {serversoc..
-
자바 인프런 - 스레드자바/인프런 인강 2018. 2. 16. 12:50
자바는 멀티스레드를 지원한다. 객체 1개당 스레드 1개 1. Runnable 인터페이스를 implements해서 run()메소드 오버라이딩하기 public class Threadtest implements Runnable{@Overridepublic void run() {System.out.println(Thread.currentThread().getName());System.out.println("ThreadTest");for (int i = 0; i Thread클래스의 if문에 의해서 A스레드의 testNum은 1씩 증가하고B스레드의 testNum은 계속 0으로 출력된다. Synchronized는 1개의 객체에 n개의 스레드가 실행될때 먼저 실행된 스레드의 작업이 끝난 후 다음 스레드가 실행되게 한다..