☕️ Java 문법 종합반 (1) -①기초개념 / TIL day - 6

하리비·2025년 2월 24일
1

☕️ Java

목록 보기
1/8

📖 1) hello java

📌 java의 탄생배경

초기 컴퓨터 세계는 운영체제마다 코드가 다르게 동작했다

  • 디버그 - 문제를 해결하는 과정

📌 java의 탄생

write once, run anywhere! 나랑 태어난 년도 똑같음/ 고슬링씨가 만듬

📌 java의 특징

✔️ 1. 플랫폼 독립성

  • 한번 작성하면 어디서든 작동한다 write once, run anywhere!
  • Java Development Kit (개발 도구 모음 - 이를 통해 프로그램의 독립성을 보장 받을 수 있음 )
    • javac : 자바 컴파일러
      내가 입력한 자바 언어를 자바컴파일러가 바이트 코드로 변환해준다
      • 바이트 코드 - 자바 프로그램이 실행되기전 중간 단계의 코드 ! JVM이 해석할 수 있는 코드
    • jvm : 자바 가상머신
      바이트 코드를 해석하고 자바 프로그램을 실행시켜준다
      요놈 덕분에 환경에 상관없이 동작 가능함

✔️ 2. 객체지향 - 모든것이 클래스

  • 원래 개념은 하단과 같으나,

    개념비유설명
    클래스설계도객체를 만들기 위한 정의
    객체설계도를 기반으로 만들어진 존재클래스에서 만들어진 존재

    일단 초보자 이므로 객체 = class라고 생각할 것
    실무에서는 혼용해서 쓴다, 걍 파일이라고 생각하시요

✔️ 3. 거대한 생태계

  • 오랜시간 선호되어 온 프로그래밍 언어로, 방대한 생태계를 가지고 있다


💡 실습 - 코드로 플랫폼 독립성 살펴보기

[ 예시 ]

public class Main {

  public static void main(String[] args) {//------Java 코드 파일을 실행할때 
                                          //제일 먼저 실행되어야 하는 부분을 표시하는 
                                          // 약속된 규칙
      System.out.println("Hello, java!");
  }
}

실행하면 콘솔에 hello, java! ->
out/production/프로젝트명/MainMain.class를 확인 ->
view->Show Bytecode


  • 실행방법
    • ① 우 상단 초록색 재생버튼
    • ②우클릭 후 run ( ctrl + shift + R )
  • 실행하지 않으면 바이트 코드는 생성되지 않는다


📖 2) 컴퓨터의 기억방식

📌 주 기억장치 - 메모리 (RAM: Random Access Memory)

  • 특징 : 휘발성, 빠른속도
    컴터도 갑자기 종료되면 작업하던 내용 다 사라짐 like 인간의 뇌

📌 보조기억 장치 - HDD / SSD

  • 특징 : 영구적, 느린 속도
    정보를 영구적으로 저장하기 위한 장치 like 인간의 노트
    ( but 꺼내는데 주 기억장치보다 속도가 느리다 )
구분종류특징
Ram주기억장치휘발성, 빠름
HDD/SSD보조기억장치영구저장, 느림

📌 컴퓨터가 메모리를 관리하는 방법

  • 1바이트 단위로 기록한다

    • 바이트(Byte) : 컴퓨터가 테이터를 저장하고 처리하는 단위 , 1바이트=8비트

    • 비트(Bit) : 메모리의 최소 저장단위
      0과 1 중에 한가지를 저장할 수 있으므로 1비트에 숫자 2개
      저장 단위가 1 비트 증가할 때, 저장 공간은 2배로 늘어난다(n비트=2^n)

  • 메모리 절약 - 좋은 프로그래머가 되기 위한 첫걸음


📖 3) 자바 프로젝트 관리

📍 이름규칙의 종류

  • 카멜케이스
    낙타 -> 대문자가 혹처럼 튀어나온다
    ( firstName, lastName, fullName )

  • 스네이크케이스
    뱀 -> 언더스코어가 뱀처럼 이어진다
    (first_name, last_name, full_name )

📌 패키지 (폴더)

  • 파일들의 묶음을 패키지라 부른다 like 폴더
    +) 인텔리제이의 src는 폴더가 아님 (기본적으로 생기는 소스코드 보관하는 곳)

    ✔️ 패키지 이름 규칙

    • 영문 소문자로 시작하는 것을 권장, 끊는다면 .을 사용
    • 예약어 사용 금지-> 혼란을 야기한다
      • 예약어 : 자바에서 기본적으로 점유하고 있는 단어(public, class, static)

📌 클래스 (파일)

  • 패키지 속 파일 = 클래스

    ✔️ 클래스 이름 규칙

    • 카멜케이스 적극 활용 + 영문대문자로 시작 => pascal case 이건 규칙임!

💡 import 란 ?

[ 예시 ]

  • 새로 만든 클래스를 기존 클래스에 불러와 사용도 가능 - new 클래스이름();
  • 이때 생기는 import 패키지.클래스;를 통해 어느 패키지에 속한 클래스인지 명시된다
    (한 프로젝트 안에 동일한 이름을 가진 클래스가 존재할 수 있으므로)

0개의 댓글