title: What is @Input() used for in Angular?
body: <p>I was studying the <a href="https://angular.io/tutorial/toh-pt3#add-the-input-hero-property" rel="noreferrer">Create a feature component</a> tutorial on angular.io and then I noticed the <code>@Input</code> decorator property:</p>
  <pre class="lang-ts prettyprint-override"><code>// src/app/hero-detail/hero-detail.component.ts
  import { Component, OnInit, Input } from '@angular/core';
  import { Hero } from '../hero';
  
  @Component({
    selector: 'app-hero-detail',
    templateUrl: './hero-detail.component.html',
    styleUrls: ['./hero-detail.component.css']
  })
  export class HeroDetailComponent implements OnInit {
    @Input() hero: Hero;
  
    constructor() { }
    ngOnInit() { }
  }
  </code></pre>
  <p>What is <code>@Input()</code> and what is it used for?</p>