Memorizing/Java12
-
[Java] 프로세스와 스레드 - 2
본 포스팅에서는 Thread를 java에서 어떻게 생성할 수 있는지에 대해 다룹니다. Thread 가장 기본적인 방법으로 Thread 클래스를 상속받아 스레드를 만들 수 있습니다. 예제 코드는 아래와 같습니다. 스레드를 new를 통해서 생성한 후, start메서드를 호출하면 스레드가 실행되고, run메서드를 호출하게됩니다. public class TestThread extends Thread { @Override public void run { // 쓰레드 수행작업 } } ... TestThread thread = new TestThread; // 쓰레드 생성 thread.start // 쓰레드 실행 Runnable Thread보다 널리, 많이 쓰이는 방법으로 Runnable 인터페이스를 이용..
2024.02.17 -
[Java] 프로세스와 스레드 - 1
본 포스팅은 프로세스와 스레드에 대해 다룹니다. 프로세스는 "실행 중인 프로그램"을 의미합니다. 카카오톡, 크롬 브라우저 등도 모두 프로세스라고 할 수 있습니다. 운영체제OS에서는 프로세스를 할당할 때, 프로세스에 code, data, 메모리 영역Stack,Heap을 함께 할당해줍니다. 각각의 간단한 설명은 아래와 같습니다. 1. Code 는 Java main 메소드와 같은 코드를 말합니다. 2. Data 는 프로그램이 실행중 저장 할 수 있는 저장공간을 의미합니다. 1. 전역변수, 정적변수static, 배열등 초기화된 데이터를 저장하는 공간 3. Memory 메모리영역 - Stack : 지역변수, 매개변수 리턴 변수를 저장하는 공간 - Heap : 프로그램이 동적으로 필요한 변수를 저..
2024.02.17 -
[Java] 상속
본 포스팅은 Java에서 등장하는 상속의 개념과 특징 그리고 오버라이딩, 다형성, 추상 클래스에 관해 다룹니다. 상속 상속은 부모 클래스의 필드와 메서드를 자식 클래스가 이용할 수 있도록 하는 것을 말합니다. 아래와 같이 부모 클래스를 상속할 수 있습니다. 자식 클래스에서 부모 클래스의 필드를 이용하려면 super를 사용하면 됩니다. public class SportsCar extends Car{ } 오버라이딩 오버라이딩은 자식 클래스가 부모의 필드와 메서드를 다시 재정의하여 사용하는 것을 말합니다. 아래와 같이 오버라이딩 할 수 있습니다. public class Car { String company; // 자동차 회사 private String model; // 자동차 모델 private String ..
2024.02.07 -
[Java] Class
본 포스팅은 Java에서 필수적인 요소인 Class의 개념과 여러 요소에 대해 다룹니다. Java는 모든 것이 클래스로 이루어져있는 클래스의 집합체라고해도 과언이 아닙니다. 따라서 클래스의 개념과 특징에 대해 잘 알아보는 것은 중요하다고 할 수 있습니다. 클래스 설계 클래스를 만들기 위해선 4가지 절차를 거칩니다. 클래스 선언: 만들고자 하는 클래스 파일을 만들고 클래스를 선언합니다. 필드 정의: 클래스가 만든 객체인스턴스가 가져야할 필드를 정의합니다. 생성자 정의: 객체를 생성하는 생성자를 정의합니다. -> 생성자를 정의하지않으면 기본 생성자를 Java compiler가 작성하여줍니다. 메서드 정의: 객체가 가지고있어야할 메서드를 정의합니다. 생성자 생성자는 클래스가 선언될 때, 초기화하는 역할을 ..
2024.02.07 -
[Java] Collection
본 포스팅은 Java에서 많이 사용하는 자료 구조인 컬렉션의 종류와 특징에 대해 다룹니다. 본 포스팅에서 다룰 컬렉션의 종류는 아래와 같습니다. ArrayList LinkedList Stack Queue Set Map ArrayList ArrayList는 Array와 달리 참조형 변수를 저장하는 동적 배열입니다. 배열의 크기를 미리 정하지 않고, 원소를 추가하거나 뺄 수 있습니다. LinkedList LinkedList는 ArrayList와 달리 메모리에 남는 공간을 요청해서 여기저기 나누어서 실제값을 담아놓고, 실제값이 있는 주소값으로 목록을 구성하고 저장합니다. 따라서 ArrayList보다 조회하는 속도는 느리지만, 중간에 값을 추가하는 속도는 더 빠른 특징이 있습니다. Stack Stack은 FIL..
2024.02.07 -
[Java] Array
본 포스팅에서는 Java에서 배열을 선언하는 방법과 println을 사용하여 배열 값을 출력할 때의 주의점을 다룹니다. Java에서 배열을 초기화 하는 방법은 두 가지가 있습니다. 첫 번째는 배열의 크기를 선언한 후, 값을 할당해주는 방법입니다. int[] intArray = new int[3]; for inti=0;i<intArray.length;i++ { intArray[i] = i + 1; } 두 번째는 값을 바로 초기화 해주는 방법입니다. int[] intArray = {1, 2, 3}; 한편, println 함수는 변수의 값을 문자열 형태로 출력하여줍니다. 주의할 것은 Java의 println함수는 toString함수를 호출하는데, 배열의 경우 toString은 주소값을 ..
2024.02.07