Java

    Java - 추상클래스 (abstract)와 인터페이스(interface)

    1. 추상 클래스 클래스 선언시 abstract class로 정의 추상 메소드를 하나 이상 포함 추상 메소드는 선언만하고 구현하지 않은 메소드로 정의 추상 메소드를 포함하는 상위 클래스는 객체 생성 불가 하위 클래스에서 상속 받은 모든 추상 메소드를 구현하면 객체 생성 가능 추상 메소드를 모두 구현하지 않을 경우, 하위 클래스도 모두 추상 클래스 하위 클래스에 기본 틀을 제공 1.1. 예시) 추상 클래스의 추상 메소드를 상속 받은 하위 클래스에서 구현하여 메소드 사용 // 부모 추상 클래스 package model; public abstract class GrandParent { // 추상클래스는 // 메소드를 만드는데 메소드의 이름만있고 // 내용은 아직 정해지지 않앗다. String name; int..

    Java - 상속 (Inheritance) / 메소드 오버라이딩 (Method Overriding) / super

    상속이란? 자바에는 상속(Inheritance)이라는 개념이 존재합니다. 쉽게 말해 부모 클래스(상위 클래스)와 자식 클래스(하위 클래스)가 있으며, 자식 클래스는 부모 클래스를 선택해서, 그 부모의 멤버를 상속받아 그대로 쓸 수 있게 됩니다. 상속을 하는 이유는 간단합니다. 이미 마련되어 있던 클래스를 재사용해서 만들 수 있기 때문에 효율적이고, 개발 시간을 줄여주게 됩니다. 부모 클래스 코드 public class Parent { String name; int age; private int money; Parent(){ System.out.println("Parent 클래스 생성자!"); } public int getMoney() { return money; } public void setMoney(..

    Java - 접근제어자 / this / getter setter

    접근제어자 멤버 변수만 다른 파일에서 사용 가능하도록 하는 접근 제어자가 있다. 접근 제어자의 위치는 데이터 타입의 왼쪽에 입력한다. 총 4개가 있다. 1. 아무것도 안 적는 것 => default : 같은 패키지 내에서만 접근 가능 2. private : 다른 곳에서 접근 불가 3. public : 아무데서나 접근 가능 4. protected : 상속관계에서 사용 가능. this 키워드 this 키워드는 클래스의 멤버 변수나 메소드를 가리킬 때 사용한다. 멤버 변수와 로컬 변수의 이름이 같으면 컴퓨터도 헷갈리고 사람도 헷갈린다. 따라서 this라는 키워드를 이용해서 구분해주는 용도로 사용한다. getter setter 멤버 변수가 private으로 되어있으면 멤버 변수에 데이터를 저장하는 함수와 가져오..

    Java - 생성자(Constructor) , 생성자 오버로딩

    1. 생성자 함수의 리턴 타입이 없음 클래스의 이름과 같은 이름으로 함수를 정의 메모리에 객체를 생성하여 영역을 확보 바로 인스턴스 변수에 데이터 셋팅 2. 생성자 오버로딩 디폴트 생성자 말고 생성자 오버로딩으로 생성자를 만들 때는 꼭!!!!! 위의 Member()