본문 바로가기

프로그래밍36

[JAVA 기초] 자바 클래스 - 상속(Extends) 1 상속 상속이란 새로운 클래스를 작성할 때 기존에 존재하는 클래스를 물려받아 이용한다. 기존의 클래스가 가진 멤버를 물려받기 때문에 새롭게 작성해야 할 코드의 양이 줄어드는 효과가 있다. 이때 자신의 멤버를 물려주는 클래스를 부모클래스 또는 조상 클래스라고하고 상속받는 클래스를 자식 클래스 또는 자손 클래스라고 한다. 부모 클래스와 자식 클래스의 관계를 상위(super) 클래스와 하위(sub) 클래스라고 표현하기도 한다. 또한 기초 클래스(base class), 유도 클래스(derived class)라고도 부른다. 상속할 때는 새롭게 작성할 클래스 선언 부분 뒤에 'extends 부모클래스이름' 을 붙인다. class Parents{} class Child extends Parents{} // Pare.. 2021. 3. 11.
[JAVA 기초] .java 파일 클래스 분리 (Refactor) 원하는 파일창에서 마우스 우클릭 -> Refator(Alt + Shift + T) -> Move Type to New File 다음과 같이 화면이 뜨게 된다. 두 파일로 분리되면 모습을 보여주는 화면이다. OK 눌러준다. 다음과 같이 파일이 두개로 분리된 모습을 볼 수 있다. 한 .java 파일 내에 해당 class가 선언되어있지 않더라도 호출이 가능하다. 2021. 3. 11.
[JAVA 기초] 자바 오버로딩, 생성자 1 오버로딩(overloading) 오버로딩(overloading)은 매개변수의 개수와 타입은 다르지만 이름이 같은 메서드를 여러 개 정의 하는 것을 말한다. 일반적으로 메서드를 사용할 때는 메서드의 이름으로 구분해서 사용한다. 하지만 같은 기능을 하는 메서드가 매번 이름이 달라야 한다면 매우 비효율적일 것이다. int sum(int a, int b){ return a+b; } 두 개의 인자(파라미터)를 받아 합을 리턴해주는 메서드이다. 만약 세 수의 합을 구하고 싶을 때는 새로운 메서드를 선언해야 한다. int sum_3(int a, int b, int c){ return a+b+c; } 만약 매개변수가 더 늘어나거나 자료형이 달라지면 매번 새로운 메서드 이름을 지정해야 하는 번거로움이 발생한다. 그리.. 2021. 3. 10.
[JAVA 기초] 자바 클래스 멤버와 인스턴스 멤버 1 클래스 멤버와 인스턴스 멤버간의 참조 및 호출 클래스 변수와 클래스 메서드를 클래스 멤버라 부르고 인스턴스 변수와 인스턴스 메서드를 인스턴스 멤버라고 부른다. 같은 클래스에 속한 멤버들끼리는 인스턴스를 생성하지 않고 변수를 참조하거나 메서드를 호출한다. 하지만 클래스 메서드로 인스턴스 멤버들을 참조하는 것은 에러가 발생한다. 그 이유는 클래스 멤버가 존재하는 시점은 처음 클래스가 메모리에 올라갈 때인데 이 시점에서 인스턴스 멤버는 존재하지 않기 때문이다. 인스턴스 멤버의 클래스 멤버 사용 -> 가능 클래스 멤버의 인스턴스 멤버 사용 -> 에러 인스턴스 멤버의 인스턴스 멤버 사용 -> 가능 클래스 멤버의 클래스 멤버 사용 -> 가능 네가지 경우 중에 클래스 멤버로 인스턴스 멤버를 사용할 경우에만 에러가.. 2021. 3. 9.