프로그래밍 노트/JAVA

List 구현체 Vector 와 ArrayListList 인터페이스를 구현하기 때문에 데이터의 저장순서가 유지되고 중복을 허용한다는 공통적인 특징을 갖는다. 공통점 차이점 List 인터페이스를 구현한다. 저장순서가 유지되고 중복을 허용한다.데이터의 저장 공간으로 배열을 사용한다. Vector는 멀티쓰레드에 대한 동기화가 되어 있으나 ArrayList는 그렇지 않다. => Vector는 동기화처리 때문에, 성능이 좋지않으므로 사용할때 주의해야 한다. LinkedList배열은 가장 기본적인 형태의 자료구조로 사용하기 쉽고 데이터를 읽어오는데 걸리는 시간(access time)이 가장 빠르다는 장점을 가지고 있다.하지만 !! 아래와 같은 단점이 존재한다.1. 크기를 변경할 수 없다. 크기가 넘으면 새로운 배열..
JAVA 네트워크 프로그래밍 네트워킹의 개념은 컴퓨터들을 서로 연결하여 데이터를 손쉽게 주고받거나 또는 자원을 함께 공유하고자 하는 노력에서 시작되었다. 자바에서 제공하는 java.net패키지를 사용하면 이러한 네트워크 어플리케이션의 데이터 통신 부분을 쉽게 작성할 수 있다. InetAddress Ip주소를 다루기 위한 클래스 URL(Uniform Resource Location) URL은 인터넷에 존재하는 여러 서버들이 제공하는 자원에 접근할 수 있는 주소를 표현하기 위한 것 ‘프로토콜://호스트명:포트번호/경로명/파일명?쿼리스트링' URLConnection 어플리케이션과 URL간의 통신연결을 나타내는 클래스의 최상위 클래스로 추상클래스 HttpUrlConnection과 JarURLConnection이..
try-with-resource문은 무엇인가? 자바7은 try/catch/finally문과 함께 유용하게 사용할 수 있는 문법을 제공한다. AutoCloseable 인터페이스를 구현한 FilReader 클래스를 이용하면 아래와 같이 자원 종료를 걱정할 필요가 없다. => 자원 해제 자동처리 기능 public void resourceHandling(){ try(final FileReader reader = new FileReader("/test/test.txt")){ final char[] buffer = new char[128]; reader.read(buffer); }catch(IOException e){ } }​ try-with-resources문이 도입되기 전에는 reader 인스턴스를 명시적으로 ..
컬렉션 프레임워크자바에서는 많은 수의 다양한 패키지(Java API)를 제공하여 개발자들이 자바 어플리케이션을 쉽게 개발할 수 있도록 도와준다.그 중 컬렉션 프레임워크에 대해 알아보겠다.컬렉션 프레임워크는 다수의 데이터를 쉽게 처리할 수 있는 표준화된 방법을 제공하는 클래스이다. 컬렉션 프레임워크의 핵심 인터페이스- List, Set, Map각 컬렉션을 다루는데 필요한 기능을 가진 3개의 인터페이스르 정의하고, 인터페이스 List와 Set의 공통된 부분을 다시 뽑아서 새로운 인터페이스인 Collection을 추가로 정의하였다. List순서가 있는 데이터의 집합, 데이터의 중복을 허용한다.ArrayList, LinkedList, Stack, Vector 등Set순서를 유지하지 않는 데이터의 집합. 데이터의..
일반프로그램 : OS에서 실행 (Program OS Hardware)Java 프로그램 : JVM에서 실행(JVM은 OS에 종속적) (Java Program JVM OS Hardware) JVM이란?Java Virtual MachineJava와 OS 사이에서 중계자 역할Java Program이 OS에 구애받지 않고 실행될 수 있게 해줌메모리 관리 기능(Garbage Collection) JVM 메모리 구조Java Source : 사용자가 작성한 Java 코드(.java) Java Compiler : Java 코드를 Byte Code(.calss)로 변환시켜주는 기능을 함Class Loader : Class 파일을 메모리(Runtime Data Area)에 적재시켜주는 기능을 함Byte Code(.class..
RSA를 이용한 데이터 암복호화 키발급부터 개인키로 암호화(전자서명) 한 후 공개키로 복호화는 과정입니다. public static void main(String[] args){ /* server code */ /* Key 발급 */ PublicKey publicKey = null; // 공개키 PrivateKey privateKey = null; // 개인키 SecureRandom secureRandom = new SecureRandom(); // random number generator(RNG) try { KeyPairGenerator keyPairGenerator = KeyPairGenerator.getInstance("RSA"); // RSA(1024, 2048), DiffieHellman(10..
Comparable 와 Comparator의 사용법Comparable과 Comparator는 정렬과 관련된 인터페이스입니다.(sort()라는 메서드와 관련이 있다고 보시면됩니다.)배열이나 Collections 프레임워크 사용시 sort() 메서드를 사용하면 자동으로 정렬을 시켜줍니다.1234567891011121314151617181920212223242526272829303132package practice; import java.util.ArrayList;import java.util.Arrays;import java.util.Collections;import java.util.List; public class SortImpl { public static void main(String[] args) ..
간단한 자바 명명규칙 클래스- 클래스는 항상 대문자로 시작, 카멜표기법BooleanStringBuilderStringBuffer 변수와 메서드 - 변수와 메서드는 항상 소문자로 시작, 카멜표기법int num = 30;int carSize = 5;public String toString(); 상수 - 상수의 명명 규칙은 모두 대문자를 사용, 단어 사이는 밑줄로 연결public static final int HTTP_OK = 200;public static final double PI = 3.14159265358979323846;
처음 자바를 공부할 때 어떤 것을 받아야할지 고민했던 기억이 난다. 예전에 웹을 처음배울 때 Java SE를 받아서 이클립스에서 나만 서버를 만들 수 없었던 상황이 있던적도 있었다..^^;;JAVA SE (Java Platform Standard Edition)데스크톱, 서버, 임베디드시스템을 위한 표준 자바 플랫폼. 자바 가상머신 규격 및 API집합을 포함 JAVA EE,ME는 목적에 따라 SE를 기반으로 기존의 일부를 택하거나 API를 추가하여 구성된다. SE는 가장 일반적으로 사용된다. JDBC나 기본적인 기능이 모두 포함되어 있기 때문에 Android개발할때 주로 SE를 사용한다.JAVA EE (Java Platform EnterPrise Edition)자바를 이용한 서버측 개발을 위한 플랫폼. ..
깡냉쓰
'프로그래밍 노트/JAVA' 카테고리의 글 목록 (8 Page)