스터디/개념정리

    다형성이란?/업캐스팅/다운캐스팅/상속/java

    ○ 다형성이란? - '여러 가지 형태를 가질 수 있는 능력'을 의미하며, 한 타입의 참조변수로 여러 타입의 객체를 참조할 수 있도록 하는 것. 부모클래스 타입의 참조변수로 자식클래스의 인스턴스를 참조할 수 있도록 하였다는 것. 기존 클래스의 개념으로 보았을때 인스턴스는 아래와 같이 생성하고 메소드를 호출하였다. 1 2 3 4 5 6 7 8 9 public class Test { public static void main(String[] args) { Parents p = new Parents(); Son s = new Son(); p.pMethod(); s.sMethod(); } } Colored by Color Scripter cs - 각각 Parents 클래스와 Son 클래스의 인스턴스를 생성하여 각..

    상속의 기본 개념/클래스 상속/java

    ○ 상속 - 정의 : 새로 설계(생성)하고자 하는 클래스가 이미 설계되어 있는 다른 클래스의 기능과 중복되는 경우, 이미 설계된 클래스의 일부분이나 전체 구조를 공유할 수 있도록 하는 기능을 의미한다. [특징] - 즉, 상속은 객체를 좀 더 쉽게 만들 수 있는 고수준의 재사용성(reusability)을 확보하고 객체간의 관계를 구성함으로써 객체 지향의 또 다른 큰 특징인 다형성의 문법적 토대가 된다. - 상속은 기존 프로그램의 클래스 내용을 공유함으로써 중복된 코드들을 재작성할 필요 없이, 반복적이고 세부적인 작업을 처리하지 않기 때문에 프로그램을 작성하는 시간을 절약할 수 있고 유지보수를 편리하게 할 수 있으며, 프로그램의 길이도 짧아지게 된다. - 또한, 이미 작성된 프로그램들은 앞서 테스트되었기 때..

    메소드 오버로딩과 오버라이딩/java

    ○ 메소드 오버로딩 (중복정의) - 정의 : 메소드가 처리하는 기능은 같고, 메소드 괄호 속에 오는 인수(인자, 매개변수, 파라미터)의 개수가 다르거나 자료형(Data Type)이 다른 경우 메소드의 이름을 동일한 이름으로 부여하여 메소드를 정의할 수 있도록 문법적으로 허용한다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 public class Test098 { public static void main(String[] args) { drawLine(); // 같은 클래스 안에 있으므로 클래스명 생략 가능 //--==>..

    배열과 난수/java

    난수란? 무작위 숫자를 의미한다. ○ 난수 발생 방법 : 1) 난수 발생 전용 객체를 선언한다. Random rd = new Random(); 2) 객체 선언 시, import java.util.Random; 을 추가하여 Random을 사용할 수 있도록 한다. 3) Random 클래스의 nextInt() 메소드를 사용하여, 객체명.nextInt(정수) 형태로 사용한다. rd.nextInt(100); 4) 이때, 0 부터 정수 n-1까지의 수 중 무작위 정수(난수) 1개를 발생시킨다. 1 부터 정수 n 사이에 난수를 발생시키고 싶으면 객체명.nextInt(정수)+1 형태로 사용한다. rd.nextInt(100)+1; 1 2 3 4 5 6 7 8 9 int[] arr = new int[size]; // si..