본문 바로가기

Java 강의34

Java 프로그래밍 기초 1.소스파일 생성 -에디터 (메모장 , 이클립스 , Intellij)를 이용해서 작성 할 수 있다. -소스파일은 .java 확장자를 갖는다. 2.컴파일 -컴파일러로 컴파일 -컴파일러는 자바 소스코드를 바이트코드(기계어)로 변환 -바이트 코드는 확장자가 .class로 끝나는 파일에 저장된다. 3.클래스 적재 4.바이트 코드 검증 5.실행 -자바 가상기계(Java Virtual Machine)에서 바이트 코드를 실행 JVM 자바 가상머신이 없는 경우 JVM 자바 가상머신이 있는 경우 자바 가상머신 JVM이 없다면 같은 기능을 하는 프로그램 1을 윈도우 버전의 프로그램 1-windows와 프로그램 1-Mac으로 두 번 개발해야 합니다. 하지만 자바가상머신은 운영체제와 프로그램 사이에서 프로그램이 플랫폼에 상관.. 2017. 9. 20.
자바 오버로딩 / 메소드 오버로딩 / 생성자 오버로딩 이번 글에서는 오버로딩에 대해서 알아보도록 하겠습니다. 오버로딩의 정의는 다음과 같습니다. 오버로딩 같은 이름의 메소드 또는 생성자를 매개변수의 개수나 타입을 다르게 적음으로써 여러번 정의하고 사용할 수 있게 되는 것 코드를 통해서 더 쉽게 알아보겠습니다. 먼저 메소드를 오버로딩하는 경우입니다. 메소드 오버로딩 코드를 보시면 plus라는 같은 이름의 메소드를 네번이나 정의하고 있습니다. 4개의 plus메소드는 int a,int b int a,int b,int c String a,String b String a,int b 이렇게 매개변수의 개수 또는 타입이 다릅니다. 자바에서는 코드처럼 같은 이름의 메소드라도 매개변수(파라미터)의 개수나 타입이 다르면 반복해서 정의할 수 있습니다. 메소드 오버로딩의 사용 .. 2017. 9. 15.
자바의 변수 / 기본 타입과 참조 타입 / 메모리의 힙영역과 스택영역 이번 글에서는 변수 , 기본타입과 참조 타입 , 메모리의 힙영역과 스택영역에 대해서 알아보도록 하겠습니다. 변수의 정의는 다음과 같습니다. 변수 : 하나의 값을 저장할 수 있는 메모리 공간 , 프로그램이 사용하는 데이터를 일시적으로 저장할 목적으로 사용하는 메모리 공간 변수를 사용하는 이유는 프로그램에 의해서 값이 수시로 변하기 때문입니다. 프로그램이 사용하는 데이터를 일시적으로 저장할 목적으로 사용하는 메모리 공간을 변수라고 합니다. 프로그램을 작성할때 변수를 선언하면 데이터 타입에서 정한 크기의 메모리를 할당합니다. ●변수의 사용 자바에서 변수는 다음과 같이 사용합니다. 변수에 값을 저장하고 읽는 행위 변수의 선언 = 메모리 상에 하나의 값을 저장 할 수 있는 메모리 공간을 할당하는 것을 말합니다. .. 2017. 9. 14.
접근 제한자 / 접근 제어자 ●접근 제한자 / 접근 제어자 자바는 객체지향 프로그래밍 언어입니다. 현실 세계의 사물들을 각각 하나의 객체로 보고 객체들 사이의 관계를 중심으로 프로그램을 작성합니다. 전지적 작가 시점에서 현실세계를 보고 프로그램을 작성하는 것이 아닙니다. 3인칭 관찰자 시점에서 프로그램을 작성합니다. 예를 들면 강아지와 사람을 자바 코드로 만드는 상황을 보겠습니다. 강아지는 강아지 고유의 특성인 꼬리가 있습니다. 사람은 꼬리가 없습니다. 그럼 강아지 Class에 꼬리 길이인 변수 int lengthOfTail을 선언한다면 private이라는 접근 제한자로 데이터에 접근하지 못하게 해야 합니다. 사람 객체는 꼬리가 없으니까요. 이것이 private 이라는 접근제한자를 쓰는 첫번째이유입니다. 접근제한자를 쓰는 두번째 이.. 2017. 9. 14.
객체지향 프로그래밍 / JVM 메모리 스택 , 힙 , 클래스 영역 ●객체란? 존재하는 모든 사물은 객체가 될 수 있습니다. 사람 객체 , 고양이 객체 , 강아지 객체 , 컴퓨터 객체 ... 객체 지향 프로그래밍의 사전적 정의는 이렇습니다. 객체 지향 프로그래밍(영어: Object-Oriented Programming, OOP)은 컴퓨터 프로그래밍의 패러다임의 하나이다. 객체 지향 프로그래밍은 컴퓨터 프로그램을 명령어의 목록으로 보는 시각에서 벗어나 여러 개의 독립된 단위, 즉 "객체"들의 모임으로 파악하고자 하는 것이다. 각각의 객체는 메시지를 주고받고, 데이터를 처리할 수 있다. 출처 : https://ko.wikipedia.org/wiki/%EA%B0%9D%EC%B2%B4_%EC%A7%80%ED%96%A5_%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E.. 2017. 9. 14.