📢 공지합니다
이 게시글은 메인 페이지에 항상 고정되어 표시됩니다.
1. JVM이란?JVM(Java Virtual Machine)은 이름 그대로 '자바를 실행하기 위한 가상 기계'입니다. Java의 가장 큰 특징 중 하나는 OS에 종속적이지 않다는 점인데, 이것이 가능한 이유가 바로 이 JVM 때문입니다.간단히 말해 JVM은 운영체제에 종속받지 않고 CPU가 Java 코드를 인식하고 실행할 수 있게 하는 가상 컴퓨터입니다. 다양한 플랫폼에서 동일한 Java 애플리케이션을 실행할 수 있게 해주는 핵심 요소입니다.Java 실행 과정의 이해 Java 소스코드(.java)는 CPU가 직접 인식할 수 없기 때문에 기계어로 컴파일해야 합니다. 하지만 Java의 경우 일반적인 컴파일 언어와는 과정이 조금 다릅니다.Java 소스코드(.java)는 먼저 Java 컴파일러(javac)에 ..
개요: 필자가 시험공부를 하면서 정리한 게시물이다!! 오랜만에 자바!! 상속 - 부모가 자식에게 물려주는 행위를 말한다. 즉 부모 클래스의 필드와 메소드를 자식클래스에게 물려줄 수 있다. - 또한 중복되는 코드를 줄여주는 개발을 단축시키기 위해 사용한다. - 다중 상속을 허용하지 않는다. - 키워드는 extends이다. - 자식 객체를 생성하면 부모 객체가 먼저 생성된 다음 자식 객체가 생성된다. (부모 생성자는 자식 생성자의 맨 첫 줄에 숨격져 있는 super()에 의해 호출된다. 이것은 컴파일러에 의해 자동 호출이 되며 부모 클래스에 기본 생성자가 없고 매개변수를 갖는 생성자면 super 코드를 직접 매개변수해서 넣어야 된다. ) - 291page 메소드 오버라이딩 - 상속된 메소드를 자식 클래스에서..
개요: 필자가 하도 헷갈린 드디어 그녀석에 대한 풀이를 해보겠다. https://vaert.tistory.com/101 static - 정적(static)은 고정된 의미를 가지고 있다. - static 키워드를 사용하면 static 변수와 static 메소드를 만들수 있다. - 즉 이것들을 합쳐 정적 멤버라고 한다. - 이것은 객체에 소속된 멤버가 아니라 클래스에 고정된 멤버입니다. - Heap 영역에 할당되지 않아서 static 영역에 할당된 메모리는 모든 객체가 공유하여 어디서든지 참조할 수 있다. - 따라서 프로그램의 종료시까지 메모리가 할당된 채로 존재한다. - 하지만 너무 남발하면 시스템 성능에 악영향을 줄 수 있다. 정리 - 클래스를 설계할 때 멤버변수 중 모든 인스턴스에 공통적으로 사용해야하..
제네릭 프로그래밍이란..?? 변수의 선언이나 메서드의 매개변수를 하나의 참조 자료형이 아닌 여러자료형을 변환될 수 있도록 프로그래밍 하는 방식입니다. 오늘은 이것에 대한 예시문제를 풀고 해석하는 시간을 가져보겠습니다. 1. x,y 가 여러개의 자료형을 가질 수 있도록 T x, V y로 선언한다. 2. 그 후 Point 옆에 선언한다. 3. Point 클래스 인스턴스 두개의 점을 생성하기 위해 생성자 오버로딩 작업을 한다. 4. get 함수 set함수를 설정하여 외부로부터 나갈 준비를 한다. 1. static 메소드를 만들어 그 속에서 제네릭 메소드를 생성한다. 생성하는 방법은 위와 같다(솔직히 이부분은 그냥 공식인듯.. ) 1-1. static 메소드(makeRectangle)를 만드는 이유는 객체를 생..
오랜만에 블로그에 글을 쓰게 된다. 자바가 너무 어렵다.. 오늘은 클래스를 연결해서 학생 정보를 출력하는 코딩을 만들어 보겠다. 첫번째 클래스: 학생정보 구현(StudentInformation) 1-1. 학생의 이름. 아이디. 참조변수를 이용해 각각 선언한다. 1-2. korea, math, english 의 과목이름 점수를 부여하기 위해 생성자를 만든다. 1-3. 생성자 오버로딩을 통해 학생의 이름과 아이디를 부여한다. 1-4. 두번째 클래스에서 만든 set get 매서드 함수를 korea.math.english 엮어 set 매서드 함수로 설정한다. 1-5. 메인에서 함수를 통해 넘어와 출력한다. 두번째 클래스: 과목이름 및 점수 구현(StudentSubjectScore) 1. 과목이름과 점수를 설정하..