• 회원가입
  • 로그인
  • 구글아이디로 로그인

[PHP-생코] PHP 8강 - 상속 (inheritance) : extends 키워드

860  

상속 장점

 

상속 이용 시,
변형 불가능한 부모 객체의 모든 (속성・메서드)를 상속 받는 자식 객체를 만든 후,
이 자식 객체에 새로운 (속성・메서드) 추가 가능.

 

1. 중복 코드 제거.

2. 재사용성 향상. 

3. 가독성 향상.

 

 

2. 상속 사례 

 

SplFileInfo

SplFileObject extends SplFileInfo

SplTempFileObject extends SplFileObject

 

https://www.php.net/manual/en/spl.files.php 

 

 

3. 상속 형식

 

4. 상속 활용

 

<?php

// 수정 전 : 재출력 명령어 입력 시, rewind() 필요한 형태.

$file = new SplFileObject('data.txt');

var_dump($file->fread($file->getSize()));

$file->rewind();

var_dump($file->fread($file->getSize()));

 

// 수정 후 : 재출력 명령어 입력 시, rewind() 불필요한 형태.

class MyFileObject extends SplFileObject{

  function getContents(){

    $content = $this->fread($this->getSize());

    $this->rewind();

    return $content;

  }

}

$file = new MyFileObject('data.txt');

var_dump($file->getContents());

var_dump($file->getContents());

?>

 

https://opentutorials.org/module/6/15751

 

PS.

 

PHP 상속

https://www.php.net/manual/en/language.oop5.inheritance.php

 

PHP 상속

https://homzzang.com/b/php-1066

 

 

 


분류 제목
PHP-생코 PHP 35강 - abstract 4 (템플릿메소드 패턴 구현)
PHP-생코 PHP 34강- abstract 3 (사례:템플릿 메소드 패턴 설명)
PHP-생코 PHP 33강 - abstract 2 (형식)
PHP-생코 PHP 32강 - abstract 1 (소개)
PHP-생코 PHP 31강 - Interface 3 (monolog의 사례)
PHP-생코 PHP 30강 - Interface 2 (협업의 사례)
PHP-생코 PHP 29강 - Interface 1 (소개)
PHP-생코 PHP 28강 - 상속과 final
PHP-생코 PHP 27강 - 상속 (접근제어자 protected)
PHP-생코 PHP 26강 - 상속 (override와 parent)
PHP-생코 PHP 25강 - 컴포저 5 (autoload)
PHP-생코 PHP 24강 - 컴포저 4 (의존성)
PHP-생코 PHP 23강 - 컴포저 3 (기본 사용법)
PHP-생코 PHP 22강 - 컴포저 2 (설치)
PHP-생코 PHP 11강 - 컴포저
PHP-생코 PHP 10강 - 클래스로딩과 네임스페이스 (namespace) ※ require, include 응용.
PHP-생코 PHP 9강 - 클래스 맴버 만들기 (static)
PHP-생코 PHP 8강 - 상속 (inheritance) : extends 키워드
PHP-생코 PHP 7강 - 접근제어자 = 속성의 가시성(property visibility) ※ 캡슐화(encapsul…
PHP-생코 PHP 6강 - 생성자 (인스턴스 초기화) ★★★
5/6
목록
찾아주셔서 감사합니다. Since 2012