본문 바로가기

전체 글129

[JAVA 기초] 자바 상속과 생성자, Super() 오늘 포스팅 할 내용은 자바 자체를 이해하는데 아주 중요한 내용이다. 내가 느끼기엔 다소 어려운 내용이었기 때문에 최대한 모든 글자를 하나하나 다 읽고 포스팅한 흐름대로 이해해야 한다. 1 상속과 생성자 자손클래스의 생성자 작업을 할 때 부모 클래스의 생성자도 반드시 호출해주어야 한다. 만약 자식클래스의 생성자 내부에 부모클래스의 생성자를 따로 호출하지 않았다면 자동적으로 컴파일러는 부모클래스에 기본생성자를 호출하거나 예외적인 경우 오류를 발생하기도 하기 때문이다. 위의 내용을 자세하게 이해하기 위해 생성자에 대해 더 깊게 공부해보자. 아래 포스팅을 참고하면 아래 내용이 더 잘 눈에 들어올 것이다. soonipy.tistory.com/32 [JAVA 기초] 자바 클래스 - 2 오버로딩, 생성자 1 오버로.. 2021. 3. 11.
[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.
[JAVA 기초] 자바 클래스 메서드와 인스턴스 메서드 1 메서드란 메서드는 멤버 함수 (member function)라고도 불리며, 객체 지향 프로그래밍에서 객체와 관련된 함수로 데이터와 멤버 변수에 대한 접근 권한을 갖는다. 메서드는 클래스 기반 언어에서는 클래스 내부에 정의되며, 프로그램이 실행되고 있을 대 클래스에서 생성된 인스턴스와 관련된 동작을 정의한다. 특정한 작업이나 논리를 구성하는 코드를 괄호로 묶어 놓은 것이다. 메서드는 입력 값을 받아서 내부에서 처리하여 결과를 출력 또는 반환하는 역할을 한다. 메서드는 한 번 정해놓으면 언제든지 호출할 수있고 다른 프로그램에서도 사용한다. 이러한 재사용성은 프로그래머에세 상당히 효율적이고 또 코드의 중복을 피할 수 있게 도와준다. 메서드는 실제 현실에서 누군가에게 하는 '함축적인 지시'와 비슷하다. 2 .. 2021. 3. 9.