JAVA 스터디 1주차

이봐요이상해씨·2021년 9월 11일

JAVA

목록 보기
1/6

자바 작동원리

  • 자바프로그램 → JVM(자바 가상머신) → Host OS → 컴퓨터(물리머신)

  • 패키지 : 클래스의 묶음 → 하나의 디렉토리(폴더), 물리적으로 하나의 디렉토리

  • 클래스 : 유사한 특징을 지닌 객체들의 속성을 묶어 놓은 집합체, 객체를 생성하기 위한 틀

  • 객체 : 클래스에 정의한 것들을 토대로 메모리에 할당된 것(실제 구현)

    클래스에서 객체를 생성하는 과정을 인스턴스화라고 하며 생성된 객체를 인스턴스라고 한다

  • public static void main(String[] args)

  • main : 프로젝트 시작점을 의미

  • public : 접근 제어(외부접근가능) → 외에도 protected, private 등이 있음(실행되어야 함으로 어디서든 상속 참조가 가능한 public으로 쓰여야 함)

  • static : 시작과 동시에 호출 됨, 종료될때까지 계속 유지(즉 계속 참조가 가능) → 메인 메소드를 계속 실행시키기 위해서는 계속 살아있어야 함으로 static으로 선언

  • void : 리턴 값 없음 → 프로젝트 종료시까지 리턴되면 안됨(리턴되면 종료됨으로)

  • String[] args : 연속적인 문자열 데이터가 들어가는 저장 공간 → 프로그램실행시 외부값 가져와서 프로그램 안에서 사용할시 메모리에 저장공간 미리 선언


클래스 : 객체를 만들기 위한 설계도

객체 : 구현할 대상(클래스의 인스턴스라고도 부름)

클래스로부터 객체를 만드는 과정 : 클래스의 인스턴스화라고도함

클래스로부터 만들어진 객체 : 클래스의 인스턴스

객체는 모든 인스턴스를 포괄함

인스턴스 : 구현된 실체(메모리에 할당됨)


참조 변수와 참조값

new 연산자를 이용해서 메모리를 생성 ⇒ 객체로 사용 가능(힙 메모리 영역에 생성)//사용자가 직접 관리하는 메모리 영역

  • new 연산자는 객체를 생성 시킨 후 객체 주소 리턴함

  • c++은 new를통해 생성하면 메모리 주소를 직접 넘겨줌

  • 자바는 주소대신 참조값을 할당받음
    따라서 자바에서 개체변수 = 참조변수라고 한다

Student studentLee = new Student();
//Studnet studnetLee = null; -> 객체변수 선언(메모리 생성전임으로 null)
//studentLee = new Student(); -> 객체변수에 대한 메모리 생성(new 키워드)
 
studentLee.name = “이순신”; 
System.out.println(studentLee);

기본형

클래스명 변수명 = new 클래스명();

  1. 객체변수선언
  2. 객체 변수에 대한 메모리 생성
  3. 메모리 생성후 내부 인덱스 테이블에서 주소 맵핑후 참조값 만들고 참조변수(여기서는 studentLee)에 할당

생성자 오버로딩

클래스 안에서 다른 매개변수를 갖는 두개 이상의 생성자를 구현하는 것을 말함

참고
자바 강의
https://dinfree.com/lecture/language/112_java_2.html#m1
자바 코딩 컨벤션
https://myeonguni.tistory.com/1596
psvm의 이해
https://blog.naver.com/crazydeicide/130114957734
객체
https://programmer-seva.tistory.com/76
생성자
https://velog.io/@foeverna/Java-클래스와-객체-생성자-생성자-오버로딩

0개의 댓글