Java

클래스 라이브러리란 자바 코드를 작성하면서 자주사용 여러 유용한 기능들을 모아놓은 클래스 집합을 클래스 라이브러리라고 합니다. JDK 클래스 라이브러리 JDK 는 Java Developer Kit 의 약자입니다. 표준 개발 환경인 클래스 라이브러리라 불리는 클래스 라이브러리를 모아놓은 킷 입니다. 예를들면 키보드로 입력받는 클래스, 변수 등의 기능을 가지고 있습니다. 클래스 라이브러리를 사용하기 위해서는 import 로 어떤 클래스를 사용하겠다 라는 것을 명시해 주어야 합니다. 클래스 라이브러리를 import 했으면 해당 클래스에서 지원하는 함수를 사용할 수 있습니다. 클래스를 사용하는 프로그램을 만드는 방법 1. 클래스를 설계하는 코드를 작성 클래스를 선언한다. 2. 클래스를 이용하는 코드를 작성한다...
클래스의 멤버 기본 구성 필드 ( 클래스 변수 ) 메소드 ( 클래스 메소드 ) 생성자 인스턴스 변수와 인스턴스 메소드 클래스 멤버는 객체가 생성되고 나서 값을 저장하거나 호출할 수 있습니다. 이러한 멤버는 '인스턴스 변수', '인스턴스 메소드' 라고 부릅니다. 즉, 인스턴스 변수와 인스턴스 메소드는 클래스 객체를 생성하고 나서 사용할 수 있다는 의미입니다. 그러나 객체에 연결되지 않은 멤버를 가질 수도 있습니다. 이러한 변수와 메소드는 '클래스 변수', '클래스 메소드' 라고 부를 수 있습니다. 클래스 변수와 클래스 메소드 클래스 변수 : 클래스 전체와 연결된 필드 클래스 메소드 : 클래스 전체와 연결된 메소드 클래스 변수와 메소드를 선언할 때는 static 의 제한자를 붙여야 합니다. 1 2 3 4 5..
생성자의 개념 생성자의 이름은 반드시 클래스의 이름과 같아야 합니다. 생성자는 클래스의 객체가 생성될 때, 생성자 안의 코드가 자동으로 실행됩니다. 메소드와 다르게 생성자는 자유롭게 호출할 수 없습니다. 때문에 생성자는 객체의 멤버에 자동으로 초기 값을 설정하는 용도로 사용하는 것이 일반적입니다. 생성자는 리턴 값이 없습니다. 생성자 사용방법 C_constructor 객체를 생성하였습니다. 아무런 함수를 호출하지 않았지만, 객체가 생성되면서 생성자 함수가 호출되었습니다. 이렇게 생성자는 private 의 기본값을 설정하는 대에 사용할 수 있습니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 public class Constructor { public ..
오버로딩의 원리 클래스는 같은 이름의 메소드를 2개 이상 정의할 수 있는 기능을 제공합니다. 이렇게 같은 이름을 가지는 메소드 여러개를 같은 클래스에 정의할 수 있는 기능을 오버로딩 이라고 합니다. 오버로딩 주의점 메소드를 오버로딩 하기 위해서는 메소드 인수의 타입 혹은 갯수가 달라야 합니다. 오버로딩 사용방법 C_overloading 클래스에 타입 혹은 갯수가 다른 동일한 함수명을 지정하였습니다. 이렇게 지정하면, 호출되는 값과 일치하는 함수로 실행됩니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 package Chapter9; public class Overloading { publ..
Private 와 Public 의 차이 Private 멤버는 class 외부에서 접근할 수 없는 변수를 Public 멤버는 class 외부에서 접근할 수 있는 변수를 의미합니다. 이 말이 어떤내용을 의미하는지는 아래에서 설명드리겠습니다. Public 멤버일 때의 문제점 Car 클래스 fuel 은 Public 멤버로 선언이 되어 있습니다. 위에서도 설명드렸다시피, Public 멤버는 class 외부에서 값을 직접 바라볼 수 있다는 점입니다. 따라서 자동차의 연료는 음수가 될 수 없는데도, 음수를 직접 대입하여 설정할 수 있습니다. 클래스는 '사물' 과 '특성' 에 보다 근접한 코드를 만들기 위해 설계됩니다. 그러므로 예외에 대한 처리를 해야 할 필요가 있습니다. 왜냐하면 예외처리를 클래스 외부에서 하는 경..
컴퓨터에서 수를 계산하는 개념 컴퓨터는 사람이 읽을 수 있는 수를, 비트로 변환하여 0과 1로 저장한 후 이를 계산합니다. 예를들어 5의 숫자는 컴퓨터는 101 로 변환 후 계산합니다. 컴퓨터는 숫자를 비트로 반환한 후 계산하는 방식이기 때문에, 비트를 이동하는 방식의 시프트 연산 방식이 일반적인 연산보다 빠르게 동작합니다. 시프트 연산자 시프트 연산자는 이렇게 비트로 저장된 0과 1의 수를 왼쪽과 오른쪽으로 한칸씩 미는 방식입니다. 밀면서 새로운 자릿수는 0으로 채워지고, 벗어나는 자릿수는 값이 없어집니다. 왼쪽 시프트 연산 ( x > y ) x 의 값을 y 자리수만큼 오른쪽으로 시프트 합니다. 부호없는 오른쪽 시프트 연산 ( x >>> y ) x 의 값을 y 자리수만큼 오른쪽으로 시프트 합니다. 이 ..
JAVA 는 다형성을 위해 오버로딩과 오버라이딩을 지원합니다.다양한 형태를 가질 수 있다 는 것을 다형성이라 칭합니다. 오버로딩 ( overloading )같은 이름의 메소드에 매개변수의 유형 혹은 개수가 다른 경우를 의미합니다.$ cat mozi.java public class mozi { public static void main(String[] args) { overloading(2018, 07); overloading("Mozi", 2018); overloading(2018, "Tistory"); overloading(28); } public static void overloading(int a, int b){ System.out.println("First Method : " + a + ", " ..
JAVA 는 소스로직 중 특정구간의 수행시간 차이을 계산하기 위해 밀리, 나노 단위의 시간 함수를 지원합니다. 단위 함수 밀리세컨드 System.currentTimeMillis 나노세컨드 System.nanoTime 마이크로세컨드 지원하지 않음 밀리세컨드 System.currentTimeMillis 반환되는 타입은 long 입니다.함수 호출 시, 반환되는 값은 1970-01-01 00:00 부터 함수가 호출된 시간까지의 ms 값 입니다.public class Main { public static void main(String args[]) throws Exception { long startTime = 0; long endTime = 0; long diffTime = 0; startTime = Syste..
JSON 이란 (JavaScript Object Notation)간단히 설명하면 데이터를 특정형식으로 저장하는 방식을 의미합니다.저장 방식은 "변수명":"값" 입니다. JSON 포맷{ } 는 하나의 객체를 의미합니다.하나의 객체에는 "변수명" : "값" 으로 다수개가 구성되어 있습니다.$ cat conf/mozi.json { "Mode" : "D", "JDBCDriver" : "sunje.goldilocks.jdbc.GoldilocksDriver", "JDBCUrl_DA" : "jdbc:goldilocks://0.0.0.0:0/test", "JDBCUrl_TCP" : "jdbc:goldilocks://192.168.0.50:22581/test", "User" : "MOZI", "Password" : "m..
Multi Thread1개의 응용프로그램이 스레드로 불리는 처리 단위를 복수 생성하여 복수의 처리를 병행하는 것을 의미합니다. 기본적으로 아래의 소스는 1개 응용프로그램의 1개의 스레드가 작업을 수행하는 것을 의미합니다.$ cat Main.java public class Main { public static void main(String args[]) throws Exception { System.out.println("This is One Thread Program"); } } 그렇다면 Thread 를 구현하는 방법은 어떻게 되는지 알아보려고 합니다.1. Thread 클래스를 상속받아 구현2. Runnable 인터페이스를 구현 이번 포스팅에서는 1번 방법에 대한 코드 기반으로 알아보려고 합니다.2번 코..
꽁담
'Java' 태그의 글 목록 (4 Page)