java 29

[JAVA Tutorials] #3 Lesson: Language Basics - Operators

안녕하세요? Dorothy입니다. 오늘은 오랜만에 Java Tutorial 3편을 들고 왔습니다. 자, 그럼 지체없이 바로 시작합니다! 1. Operators 변수를 선언하고 초기화하는 방법을 배웠으니 이제 그 변수들을 활용하는 방법에 대해 알고 싶을 것입니다. 자바 프로그래밍 언어의 연산자를 학습하는 것은 좋은 시작입니다. 연산자는 특정 작업을 수행하는 특수 기호로, 하나, 둘 또는 셋의 피연산자에 대해 작업을 수행한 다음 결과를 반환합니다.자바 프로그래밍 언어의 연산자를 탐색하는 동안 연산자의 우선순위가 높은 것부터 미리 알고 있으면 도움이 될 수 있습니다. 다음 표에 나열된 연산자는 우선순위 순서대로 나열되어 있습니다. 표의 맨 위에 나타나는 연산자일수록 우선순위가 높습니다. 우선순위가 높은 연산자..

2. Java Tutorials 2024.08.06

[JAVA] Concurrency 1 (High Level Programming Language/Essential Java Classes)

안녕하십니까! 며칠만에 돌아온 Dorothy 입니다.요즘 너무 덥네요..(헥헥) 더위에 취약하고삼재도 아닌데(?) 여기저기 다쳐서 병원투어(?) 중이라 며칠간 포스팅을 하지못했습니다 ㅠ암튼 그것은 그것이고, 할 공부는 다시 해야겠죠? 시작합니다! 오늘은 JAVA 고급프로그래밍과 관련된 개념 중 동시성(Concurrnecy)에 관해 배워보도록 하겠습니다.동시성은 내용이 방대하여 총 3편으로 나누어 포스팅 하려합니다!비록 이 내용이 길다고 해도 꼭 숙지해야 하는 개념이기에 집중 부탁드립니다.   자바 공식 Concurrency 튜토리얼 1. Threads스레드는 경량 프로세스라고도 합니다. 프로세스와 스레드 모두 실행 환경을 제공하지만 새 스레드를 생성하는 데 필요한 리소스는 새 프로세스를 생성하는 것보다 ..

3. Java 2024.07.30

[JAVA] Semantics (High Level Programming Language)

안녕하세요? Dorothy입니다! 어우, 이제 제가 사는 이곳은 대프리카가 시작될 것만 같아요.이제 선글라스와 양산은 필수인 계절이 온 것입니다.. (시력보호와 피부/두피 를 위해ㅋ)각설하고, 아무리 더워도 할 공부는 해야겠죠? (흑흑)자, 시작해보겠습니다. 오늘은 고급 프로그래밍 언어의 공부 과정에서 중요한 개념인 시맨틱(Semantics)에 관해서 배워보도록 하겠습니다. 프로그래밍 언어에서 시맨틱(semantics)은 코드의 의미를 의미합니다. 즉, 코드가 작성된 의도와 실제로 어떻게 실행되는지를 나타냅니다.구문(syntax)이 코드의 문법적 구조를 다룬다면,시맨틱은 코드가 실제로 어떤 동작을 하는지,어떤 값을 생성하는지에 대한 규칙을 정의합니다.  쉽게 말해, 시맨틱은 코드를 읽고 이해하는 것과 같..

3. Java 2024.07.24

[JAVA Tutorials] #1 Lesson: Object-Oriented Programming Concepts

안녕하세요? 도무지 JAVA를 잘 모르겠지만 아무튼 열심히 하려고 하는 Dorothy입니다! (흑흑)오늘부터는 JAVA Tutorial을 차근차근 포스팅해드리겠습니다~ 집중해주세요!!  0. 필요성 및 배경.[튜토리얼]객체 지향 프로그래밍 언어를 처음 사용하는 경우, 코드를 작성하기 전에 몇 가지 기본 개념을 배워야 합니다. 이번 수업에서는 객체, 클래스, 상속, 인터페이스 및 패키지에 대해 소개합니다. 각 논의는 이러한 개념이 실제 세계와 어떻게 관련되는지에 중점을 두고, 동시에 자바 프로그래밍 언어의 문법을 소개합니다. 1. What is an Object? [ 도대체 객체가 뭔데?? ] 객체는 객체 지향 기술을 이해하는 데 핵심입니다. 지금 주위를 둘러보면 실세계의 객체에 대한 많은 예시를 찾을 수..

2. Java Tutorials 2024.07.23

[JAVA] 클래스(Class)의 개념

안녕하세요? 다시 돌아온 돌아버릴거같은 Dorothy입니다! (이유를 적으려다가  tmi 같아서 이하 생략..)   오늘은 1) 클래스(Class)와 객체(인스턴스)의 개념과 관계, 그리고 2) 객체지향프로그래밍(OOP)의 개념에 대해서 공부 해보겠습니다.   1] 클래스와 객체(인스턴스): 객체 지향 프로그래밍(OOP) 핵심 개념 1. 클래스 (Class)클래스는 객체를 생성하기 위한 청사진(설계도)입니다. 클래스는 객체가 가질 속성(데이터)과 행동(메서드)을 정의합니다. 클래스 자체는 구체적인 값을 가지지 않으며, 단지 객체를 만들기 위한 틀을 제공합니다.속성 (Attributes): 클래스가 가지는 데이터. 필드(field)라고도 합니다.메서드 (Methods): 클래스가 할 수 있는 동작. 함수라..

3. Java 2024.07.22

[JAVA] JVM 메모리 구조란? (자바 가상 머신에 대해서 AraBoJa)

안녕하세요? 오늘도 돌아온 Dorothy입니다.  오늘은 JVM 메모리 구조에 대해서 알아보도록하겠습니다.Java Virtual Machine, 줄여서 JVM 구조라고 하는데요, JVM은 JAVA structure에서 중요한 내용이므로 반드시 정확하게 그 개념과 구조에 대해서 숙지해야 하겠습니다.  자바 가상 머신(JVM)의 메모리 구조는 크게 다음과 같은 영역으로 나뉩니다: 메서드 영역 (Method Area)힙 영역 (Heap)자바 스택 (Java Stacks)PC 레지스터 (PC Registers)네이티브 메서드 스택 (Native Method Stacks)이와 같이 5개의 영역으로 이루어져 있는데요, 이를 알아보기 쉽게 도식화하면 다음과 같습니다.  1. 메소드 영역메소드 영역은 JVM의 메모리 ..

3. Java 2024.07.21

[JAVA] 자바 클래스 파일(feat. compiler)

안녕하세요? 자바를 유랑하는 유랑자이자 안내자가 되고 싶은 Dorothy 입니다!오늘은 자바 클래스 파일에 대해서 알아보겠습니다. (두둥!!!) 컴파일러는 소스 코드를 CPU의 기계어로 변환해주는 프로그램입니다. 일반적으로 하이 레벨 프로그래밍 언어의 소스 코드는 인간이 이해하기 쉽도록 작성되어 있고, 기계어는 컴퓨터가 이해하기 쉬운 형태입니다. 컴파일러는 이 두 가지 형태의 코드를 변환하여 소스 코드를 실행 가능한 형태로 만들어줍니다. 컴파일러는 일반적으로 소스 코드를 읽어들여서 문법에 맞는지 검사하고, 코드를 분석하고, 중간 코드를 생성하고, 최종적으로 기계어 코드를 생성합니다. 이 과정을 컴파일링이라고 합니다. 컴파일러는 소스 코드를 기계어로 변환하는 과정에서 성능 최적화나 보안 검사 등의 기능을 ..

3. Java 2024.07.19

[JAVA] All about JAVA [ JAVA란 무엇이냐? ]

안녕하세요? 오늘은 자바 프로그램과 그 배경이 되는 세계관 설명을 드리겠습니다.  일단, 자바 프로그래밍, 자바 웹 프로그래밍 그리고 스프링 부트 프로그래밍을 하기 위해서는 개발 환경이 필요합니다. 이것을 JDK(Java Development Kit)라고 하는데요, JDK는 최신 버전 뿐만 아니라, 이전 버전들을 선택할 수 있습니다. 1. Java(자바) 시작 이전의 역사Java는 현재 웹 어플리케이션 개발 언어이지만 처음부터 웹 서비스를 위해 만든 언어는 아닙니다.  임베디드 가전[디바이스] 시장의 성장을 예상한 그린(Green)팀이 임베디드 가전제품에 들어갈 다양한 OS와 CPU 에서 동작하는 독립적인 언어를 만드는 과정에서 Java는 태어났습니다. 1) 1990년_ 12월 전문가를 모으다워크스테이션..

3. Java 2024.07.18

[JAVA Tutorials] #0 Lesson: Hello World

안녕하세요, 자바 초보 Dorothy 입니다.오늘은 Hello World 테이블을 만들어보도록 하겠습니다. Java 란? hello world 란?테이블을 만들어 봅시다Hellonameadddressphoneseo  kim        java study[The Java™ TutorialsThe Java Tutorials have been written for JDK 8. Examples and practices described in this page don't take advantage of improvements introduced in later releases and might use technology no longer available. See Java Language Changes for ..

2. Java Tutorials 2024.06.24