개발 61

Java] Do it 자바 프로그래밍 입문 요약 (둘째마당 - 09)

09) 추상 클래스 추상 메서드란? 함수 몸체가 없이 선언만 하는 메서드 abstract int add(int x, int y); //abstract 예약어를 사용 public abstact class Computer { public abstract void display(); //추상메서드 public abstract void typing(); //추상메서드 public void turnOn(){ System.out.println("전원을 켭니다."); } public void turnOff(){ System.out.println("전원을 끕니다."); } } 위 예제는 Computer를 상속받는 클래스 중 turnOn과 turnOff구현 코드는 공통이다. 하지만 display와 typing은 하위 클..

개발/Java 2019.06.16

Java] Do it 자바 프로그래밍 입문 요약 (둘째마당 - 08)

08) 상속과 다형성 상속이란? B클래스가 A클래스를 상속받으면, B클래스는 A클래스의 멤버 변수와 메서드를 사용할 수 있음. * B클래스 -> A클래스 (화살표 주의!) => A클래스가 B클래스에게 상속한다. B클래스가 A클래스를 상속받는다. = class B extends A { ... * 예약어 private와 protected의 차이 둘 다 외부에서 사용할 순 없지만, protected는 하위 클래스에서는 public처럼 사용할 수 있음. 하위 클래스가 생성되는 과정 상위 클래스를 상속받은 하위 클래스가 생설 될 때는 반드시 상위 클래스의 생성자가 먼저 호출 된다. 하위 클래스에서 자동으로 super()을 호출 그래서 상위 클래스 생성자가 호출 될 때 상위 클래스의 멤버 변수가 메모리에 생성이 됨..

개발/Java 2019.06.16

Java] Do it 자바 프로그래밍 입문 요약 (둘째마당 - 07)

둘째마당, 자바의 핵심. 객체 지향 프로그래밍 07) 배열과 ArrayList 배열 선언 자료형[] 배열이름 = new 자료형[개수]; ex) int[] studentID = new int[10]; 자료형 배열이름[] = new 자료형[개수]; ex) int studentID[] = new int[10]; 배열 초기화 ex 1) int[] studentID = new int[] {101,102,103}; ex 2) int[] studentID = {101,102,103}; * 배열의 인덱스는 0부터 n-1개까지 객체 배열 사용하기 ex) Book 클래스를 만들고 이 클래스로 객체 배열을 만들어 본다면, Book[] library = new Book[5]; 배열 복사하기 System.arraycopy(sr..

개발/Java 2019.06.14

Java] Do it 자바 프로그래밍 입문 요약 (둘째마당 - 06)

둘째마당, 자바의 핵심. 객체 지향 프로그래밍 06) 클래스와 객체2 this 예약어 생성된 인스턴스 스스로를 가리키는 예약어, 자신의 메모리를 가리키는 this! 생성자에서 다른 생성자를 호출하는 this! 자신의 주소를 반환하는 this! Class Person { String name; int age; Person(){ this("이름없음", 1); //this를 사용해 Person(String,int)생성자 호출 } Person(String name, int age) { this.name = name; this.age = age; } } public class CallAnotherConst{ public static void main(Stirng[] args){ Person noName = new..

개발/Java 2019.06.14

Java] Do it 자바 프로그래밍 입문 요약 (둘째마당 - 05)

둘째마당, 자바의 핵심. 객체 지향 프로그래밍 05) 클래스와 객체 1 객체란? 개체를 먼저 정의하고 각 객체가 어떤 기능을 제공하고 객체 간 협력을 어떻게 구현할 것인지 고민 클래스란? 클래스는 객체의 속성과 기능을 코드로 구현한 것. *클래스 이름은 대문자로 하는 게 관습 ex) '학생'이라는 객체 클래스 이름은 Student 클래스 속성은 (=특성, =멤버변수) 학번, 이름, 학년, 사는 곳 (접근 제어자) class 클래스 이름 { 멤버 변수; 메서드; } 메서드란? 예를 들어 학생과 관련된 기능을 구현할 수 있다. 메서드 = 멤버 함수 함수 호출과 스택 메모리 함수를 호출하면 그 함수만을 위한 메모리 공간이 할당 됨. 클래스 사용과 main()함수 main( )함수에서 클래스를 사용하는 방법은 ..

개발/Java 2019.06.11