반응형 Work & Study/JAVA (& 혼공자Java)70 자바(Java) - 추상 클래스 사전적 의미로 추상(abstract)는 실체 간에 공통되는 특성을 추출한 것을 말한다. 클래스에서도 추상 클래스가 존재한다. 추상 클래스 클래스들의 공통적인 특성을 추출해서 선언한 클래스 실체 클래스(객체 생성용 클래스)들의 공통적인 특성(필드, 메소드)을 추출하여 선언한 것이다. 추상클래스와 실체 클래스는 상속의 관계를 갖고 있다. 추상 클래스가 부모, 실체 클래스가 자식으로 구현되어 실체 클래스는 추상 클래스의 모든 특성을 물려받고, 추가적인 특성을 갖을 수 있다. 추상 클래스의 용도 실체 클래스에 반드시 존재해야할 필드와 메소드의 선언(실체 클래스의 설계 규격-객체생성용이 아니다) 실체 클래스에는 공통된 내용은 빠르게 물려받고, 다른 점만 선언하면 되므로 시간 절약을 할 수 있다. 공통된 필드와 메.. 2020. 11. 9. 자바(Java) - 강제 타입 변환 강제 타입 변환(casting) 부모 타입을 자식 타입으로 변환 하는 것 자식 타입이 부모 타입으로 자동 타입 변환 후 다시 자식 타입으로 변환할 때 강제 타입 변환을 사용 할 수 있다. 자식타입 변수 = (자식타입) 부모타입; 부모 타입을 자식 타입으로 변환 Parent parent = new Child();//자동 타입 변환 Child child = (Child) parent;//강제 타입 변환 예시1) 강제 타입 변환 부모 클래스 public class Parent { public String field1; public void method1() { System.out.println("Parent-method1()"); } public void method2() { System.out.println.. 2020. 11. 5. 자바(Java) - 필드의 다형성 다형성 2020. 11. 5. 자바(Java) - 타입 변환과 다형성 저번과 같이 자바 프로그램을 개발할때 가장 중요한 기술적인 요소 중 하나인 다형성 이다. 저번 절의 재정의를 제대로 이해하고 넘어가는 것이 좋을 것같다. dustink.tistory.com/61 자바(Java) - 상속3 (메소드 재정의) 자바 프로그램을 개발할때 가장 중요한 기술적인 요소 중 하나인 메소드 재정의 이다. 메소드 재정의(오버라이딩 overriding) 부모 클래스의 메소드가 자식 클래스에서 사용하기에 부적합할 경우 dustink.tistory.com 다형성은 사용방법은 동일하지만 다양한 객체를 이용해서 다양한 실행결과가 나오도록 하는 성질이다. 다형성을 구련하려면 메소드 재정의와 타입 변환이 필요하다. 자동 타입 변환 프로그램 실행 도중에 자동적으로 타입 변환이 일어나는 것을 말한다. c.. 2020. 11. 2. 자바(Java) - 상속3 (메소드 재정의) 자바 프로그램을 개발할때 가장 중요한 기술적인 요소 중 하나인 메소드 재정의 이다. 메소드 재정의(오버라이딩 overriding) 부모 클래스의 메소드가 자식 클래스에서 사용하기에 부적합할 경우 클래스에서 수정하여 사용 한는 것이다. 메소드 재정의 방법 부모의 메소드와 동일한 시그니처(리턴타입, 메소드 이름, 매개 변수 목록)를 가져야 한다. 접근 제한을 더 강하게 재정의할 수 없다.(접근제한자) 새로운 예외(Exception)를 throws할 수 없다. 메소드가 재정의될 경우 부모 객체 메소드는 숨겨지기 때문에, 자식 객체에서 메소드를 호출하면 재정의된 자식 메소드가 호출 된다. 예시1) 부모 클래스 public class Calculator { double areaCircle(double r) { S.. 2020. 11. 2. 자바(Java) - 상속2 (부모 생성자 호출) 부모 생성자 호출 자식 객체 생성할때 부모 객체가 먼저 생성되고 그 다음 자식 객체가 생성된다. 자식 생성자의 맨 첫 줄에서 부모 생성자가 호출된다. public DmbCellPhone(){ super(); } public CellPhone(){ ... } 명시적으로 부모 생성자를 호출하려는 경우 자식클래스(매개변수언언, ...){ super(매개값, ...); } 예시1) 부모 클래스 public class People { public String name; public String ssn; public People(String name, String ssn) { this.name = name; this.ssn = ssn; } } 자식 클래스 public class Student extends Peop.. 2020. 10. 28. 이전 1 2 3 4 5 6 7 ··· 12 다음 728x90 반응형 LIST