본문 바로가기

Java & 스프링40

[Java] 오버로딩, 오버라이딩 자바의 오버로딩과 오버라이딩은 이름은 비슷하지만 아주 큰 차이를 가지고 있다. 이 둘의 개념과 차이점을 정리해 보자 메서드 오버로딩(Method overloading) 매개변수의 개수나 타입이 다를경우 한 클래스 내에서 같은 이름의 메서드를 여러 개 정의할 수 있는 것을 말한다. 오버로딩은 아래의 조건을 따른다. 메서드의 이름이 서로 같아야 한다. 매개변수의 개수나 타입이 달라야 하며 순서가 달라도 상관없다. public class Test { public static void main(String[] args) { System.out.println("메인 함수"); } public void name(String arg1) { } public void name(String str, int num) { }.. 2019. 4. 23.
[Java] JVM이란? 자바언어로 작성한 프로그램은 모두 JVM위에서 동작하게 됩니다. 이 JVM이란 무엇이고 어떤 역할을 할까요? JVM? JVM은 Java Virtual Machine의 줄임말로, 번역하자면 '자바 가상 머신'으로 해석할 수 있습니다. JVM에 대해 이해하기 전에 모든 프로그램 언어는 개발자(인간)가 작성한 언어를 컴퓨터(기계)가 이해 가능한 언어로 변경해 주는 과정이 필요하다는 것을 알고 있어야 합니다. 여기서 개발자가 작성한 언어는 코드, 컴퓨터가 이해 가능한 언어는 기계어라고 불립니다. 그리고 코드를 기계어로 변경하는 작업을 컴파일이라고 합니다. 아주아주 간단하게 프로그램이 실행되는 과정에 대해 살펴보자면 '프로그램 작성 -> 컴파일 -> 실행'의 단계로 진행된다고 볼 수 있습니다. JVM은 위 과정의.. 2019. 4. 20.
[Java] 클래스 변수와 인스턴스 변수의 비교 이전 포스팅에서 클래스 변수와 인스턴스의 정의에 대해 알아보았다. 2019/04/19 - [자바/기본] - 인스턴스 변수와 클래스 변수 인스턴스 변수와 클래스 변수 자바에의 클래스에서 사용할 수 있는 변수의 종류는 총 3가지가 있다. 이 3가지에 대해서 알아보자. 변수의 종류는 선언된 위치에 따라 정해진다. 따라서 3가지의 변수 종류를 구분하기 위해서는 해당 변수가 선언.. steady-hello.tistory.com 이제 소스를 통해 각각을 비교해 보자 package test; public class MainClass { public static void main(String[] args) { System.out.println("카드의 높이 : " + CreadCard.height); System.ou.. 2019. 4. 19.
[Java] 인스턴스 변수와 클래스 변수 자바에의 클래스에서 사용할 수 있는 변수의 종류는 총 3가지가 있다. 이 3가지에 대해서 알아보자. 변수의 종류는 선언된 위치에 따라 정해진다. 따라서 3가지의 변수 종류를 구분하기 위해서는 해당 변수가 선언된 위치를 파악해야 한다. 종류 선언위치 생성시기 클래스 변수(static 변수) 클래스의 내의 변수 선언 위치 (클래스 영역) 클래스가 메모리에 올라갈때 인스턴스 변수 객체(인스턴스)가 생성될때 지역 변수 메서드, 생성자, 초기화 블럭등의 내부 (클래스 영역 외의 영역) 변수의 선언문이 실행 될때 아래와 같은 소스를 작성했다고 가정해보자 public class TestClass { int intstance; static int staticVal; void method() { int local = 0.. 2019. 4. 19.