자바 공부 10

프로세스(process), 쓰레드(thread) 생성

1. 프로세스 -컴퓨터에서 연속적으로 실행되고 있는 컴퓨터 프로그램 --> 프로세스 -Code, Data, Stack, Heap영역의 구조로 되어있는 독립된 메모리 영역. -멀티 프로세싱: 하나의 응용프로그램을 여러 개의 프로세스로 구성하여 각 프로세스가 하나의 작업을 처리하게 하는 것. 2. 쓰레드 -프로세스의 자원을 이용해서 실제로 자업을 수행하는 역할 --> 쓰레드 - 모든 프로세스에는 최소한 하나의 쓰레드가 존재함 - 쓰레드는 프로세스 내에서 각각 stack만 따로 할당받고 Code,Data,Heap영역은 공유. - 쓰레드가 두개 이상이면 멀티 쓰레드(Multi-Thread) 프로세스 생성 방법 자바에서는, 런타임 환경이 프로세스가 실행될 수 있는 기반 환경을 제공해 주기 때문에, 런타임 환경을 ..

자바 공부 2021.02.26

인터페이스(역할, 사용, 상속)

1. 인터페이스의 개념와 역할 -동일한 목적 하에 동일한 기능을 수행하게끔 강제하는 것이 바로 인터페이스의 역할이자 개념이다. (이로 인해 오류의 가능성을 줄이고, 유지보수성을 높일 수 있다) 선언방법은 다음과 같다. -선언을 하고 클래스에 적용할 때 implements를 사용한다. public interface 인터페이스이름 { public void 메소드이름1() } class 클래스이름 implements 인터페이스이름{ public void 메소드이름1() } 참고: limkydev.tistory.com/197 [JAVA] 자바 인터페이스란?(Interface)_이 글 하나로 박살내자 1. 인터페이스 개념과 역할 인터페이스....이 글하나로 박살내자. (회사에서 존댓말을 많이 쓰기때문에 여기서라도..

자바 공부 2021.02.25

문제풀이-2

1. 일단 입력받는 것 자체가 오랜만이라 제대로 입력받는지 확인을 해보자. 제대로 작동한다..!! 아직은 안헤매도 된당 ㅎㅎ package org.opentutorials.javatutorials.numberstring; import java.util.Scanner; class Date{ int Y, M, D; public Date(int Y, int M, int D) { this.Y=Y; this.M=M; this.D=D; } public void print1() { System.out.println(Y+","+M+","+D); } public void print2() { String[] Month = {"January", "February", "March", "April", "May", "June",..

자바 공부 2021.02.16

상속(개념, 클래스 상속, 부모 생성자 , 다형성, 추상 클래스)

1. 상속, 클래스 상속 자바에는 부모클래스와 자식클래스가 존재한다. 자식 클래스는 부모 클래스를 통해 그 부모의 멤버를 상속받아 쓸 수 있다. 예제를 보면서 클래스 상속을 사용해 보자. package org.opentutorials.javatutorials.numberstring; class Student{ int num1, num2; public Student (int num1, int num2) { this.num1=num1; this.num2=num2; } public void Print() { System.out.println("print1."+ num1 +", "+ num2); } } class Student1 extends Student{ public Student1(int num1, int..

자바 공부 2021.02.16

this와 접근 제어자

1. this, this() 1-1. this 저번 블로그 포스팅 때 만들었던 계산기를 다시 살펴보면, 이미 this를 사용했던 적이 있었다. this를 사용하면, 메서드의 인수나 변수에 필드와 같은 이름을 붙여도 그것들을 구분하여 사용할 수 있다. this는 주로 생성자와 메소드의 매개변수 이름이 필드와 동일한 경우, 인스턴스 멤버인 필드임을 명시하고자 할때 사용한다. 참고자료: coding-factory.tistory.com/523 [Java] 자바 this의 의미와 사용법 People클래스에 Age필드와 setAge( ) 메소드가 다음과 같이 선언되어 있다고 가정해보겠습니다. public class People{ //필드 int age; //메소드 void setAge(int a){ age = a;..

자바 공부 2021.01.31

객체지향이란? / 클래스선언, 클래스 구성, 변수, 메소드 등

1. 객체지향이란 객체 지향 프로그래밍(OOP, Object-Oriented Programming) 객체 지향 프로그래밍에서는 모든 데이터를 객체(object)로 취급하며, 이러한 객체가 바로 프로그래밍의 중심이다. (지금은 이해하기 어렵겠지만 뒤의 클래스와 인스턴스를 배우면서 더 공부해 보자!) 참고자료: www.tcpschool.com/java/java_class_intro 코딩교육 티씨피스쿨 4차산업혁명, 코딩교육, 소프트웨어교육, 코딩기초, SW코딩, 기초코딩부터 자바 파이썬 등 tcpschool.com 2. 메소드(method) 메소드란 어떠한 특정 작업을 수행하기 위한 명령문의 집합이라 할 수 있다. --> C언어에서의 새로운 함수만드는 것과 비슷한 것 같다. 메소드를 사용하는 이유 메소드를 ..

자바 공부 2021.01.25

참조타입/배열(2차원배열, 다차원 배열, 가변배열)

참조타입 참조 타입(reterence type)은 메모리의 주소를 값으로 가진다. (값인 주소를 통해 객체를 참고한다고 한다!) 참조타입은 문자열타입, 배열타입, 열거타입, 클래스, 인터페이스 등으로 나뉘어진다. ( 이 중에 배열은 이번에 알아볼 것이다) 그럼 참조타입이 가지게 되는 주소는 각 각 어떤 영역에 있는지 알아보자. 1. 메소드 영역 코드에서 사용되는 클래스(~.class)들을 클래스 로더로 읽어 클래스별로 런타임 상수풀(runtime constant pool), 필드(field) 데이터, 메소드(method) 데이터, 메소드 코드, 생성자(constructor) 코드 등을 분류해서 저장한다. 2. 힙영역 힙 영역은 객체와 배열이 생성되는 영역이다. 3. 스택 영역 기본 타입 변수는 스택 영역..

자바 공부 2021.01.16

백준 연습문제(JAVA공부) 2739, 2839, 10430 문제풀이

백준 2739번 (www.acmicpc.net/problem/2739) 첫 번째 문제는 N을 입력받은 뒤, 구구단 N단을 출력하는 프로그램을 작성하는문제이다. for반복문을 이용해서 간단히 문제라서 금방 풀 수 있었다. 처음에 틀려서 당황했다. 혹시 이거 때문에 틀렸나 해서 '*'와 '=' 앞뒤에 공백을 추가하니 통과되었다. 백준 2839번 (www.acmicpc.net/problem/2839) 이번에 풀 3문제 중에 가장 어려웠던 것 같다. 이 문제에서 주의할 점은 "상근이가 배달하는 봉지의 최소 개수를 출력한다. 만약, 정확하게 N킬로그램을 만들 수 없다면 -1을 출력한다."는 것이다. 처음에 n을 5로 나눈 나머지가 3으로 나누어 지면 n/5+(n%5)/3이 정답이라고 생각했다. 하지만 예제 입력인..

자바 공부 2021.01.16

변수와 자료형(변수 타입, 선언, 데이터 타입, 형변환)/조건문&반복문/연산자

이번 공부는 대부분 c언어와 비슷한 부분이 많아서 공부하기 수월했다!! 1. 변수와 자료형 1-1. 변수타입의 종류 변수는 그릇 같은 것으로 정수형 변수는 정수를 실수형 변수는 실수를 담을 수 있는 것 같이 이해하면 된다. 자바에서 변수는 데이터 타입의 변수와 참조형 타입의 변수로 나누어 진다고 한다. 1-1-1. 데이터 타입의 변수 1-1-2. 참조형 타입의 변수 처음 참조형 타입의 변수는 데이터 타입의 변수 8가지를 제외한 모두라고 할 수 있다. 예를 들어 string과 scanner이다. 객체의 주소를 저장하는 것이라고 할 수 있다. 문자열은 문자열의 첫 번째 문자의 주소를 가리키는 것과 같은 의미인 것 같다. 대표적으로 문자열 타입의 변수를 알아보자. 문자열을 " "로 묶어 변수를 선언할 수 있다..

자바 공부 2021.01.09

자바 공부 준비(자바 설치, 이클립스 설치, 표준 입출력)

1. 자바 설치 www.oracle.com/java/technologies/javase-jdk15-downloads.html 이곳에서 자신의 운영체제에 맞는 java SE를 설치한다. 나는 윈도우 64를 사용하기 때문에 이 버전을 다운로드 한다. 다운로드 한 exe 파을 열고 설치를 진행한다. next를 누르고 경로를 바꾸고 싶으면 바꾸면 된다. 나는 그냥 next를 택했다. 이렇게 뜬다면 설치 완료!!! 이제 java에 관련된 환경 변수를 변경해보자! 제어판에 환경 변수 편집을 검색해서 들어간다. 시스템 환경 변수 편집에 들어가서 환경 변수에 들어간다. 새로만들기를 눌러 변수는 JAVA_HOME, 값은 각자 파일이 저장된 곳으로 저장한다. 이제 path를 편집한다. path를 클릭하고 편집을 클릭한다...

자바 공부 2021.01.02