typescriptですクラス継承の修飾子

// 1、クラスの定義は、TS 

    / * 
    ES5:

        人(名前){機能

            this.name =名; 

            this.run =関数(){ 

                にconsole.log(this.name)
            } 
        } 

        VARのPを=人新しい新しいです( '張「); 

        p.run()
    * / 


  / * 
        TSクラスを定義:


            クラス{人物

                名:文字列; //プロパティのフロントキーワードは公共省略されている

                (nはコンストラクタを:文字列){//コンストラクタクラスはインスタンス化されますトリガーの方法とき
                    this.name N- =; 
                } 

                RUN():ボイド{ 

                    アラート(this.name); 
                }
 
            }
            VARのp =新しい人( 'ジョン・ドウ'); 

            p.run()
  
  * / 



    / * 
    クラス{人物

        名:文字列; 

        コンストラクタ(名前:文字列){//コンストラクタクラスのインスタンストリガーの方法
            this.nameを名前=; 
        } 

        のgetName():文字列{ 

            this.nameを返す; 
        } 
        のsetName(名:文字列):無効{ 

            this.name =名; 
        } 
    } 
    VARのP =パーソン新新( 'ジョン・ドウ'); 

    警告(p.getName ()); 


    p.setName( 'ジョン・ドウ'); 


    警告(p.getName()); 

* / 





// 2、スーパーは、拡張におけるTSの継承


    // クラス人{ 

    //      名前:文字列。

    //      コンストラクタ(名:文字列){ 
    //          this.name =名; 
    //      } 

    //      RUN():文字列{ 

    //          戻りthis.name} {$ `運動
    //      } 
    // } 
    // /の/ var P =新しい人( 'Wangwu'); 
    // //アラート(p.run())


    // クラスのWeb人{拡張
    //      コンストラクタ(名:文字列){ 

    //          スーパー(名前を); / *コンストラクタは、親クラス* /初期化
    //      } 
    // } 


    // VAR新しい新しいウェブW =( 'ジョン・ドウを'); 
    // アラート(w.run()); 






    // メソッド継承されたTS親クラスディスカッションサブクラスとメソッド一貫

        // クラス人{ 

        //     名前:文字列; 

        //      コンストラクタ(名:文字列){ 
        //          this.name =名; 
        //      } 

        //      RUN():文字列{ 

        //          戻りthis.name} {$ `運動
        //      } 
        // } 
        // //新しい新VARのP =人( 'Wangwu'); 
        // //アラート(p.run())


        // クラスのWeb人{延び
        //      コンストラクタ(名:文字列){ 

        //          スーパー(名前); / *親クラスのコンストラクタを初期化する* / 
        //      } 
        //      RUN():文字列{ 

        //          戻りthis.name} {$ `モーション- subclass` 
        //      } 
        //      ワーク(){ 

        //         警告( `$ {this.name} working`)
        //      } 
        // } 


        // VAR新しい新しいウェブW =( 'ジョン・ドウ'); 
        // //アラート(w.run()); 

        // // w.work(); 

        // アラート(w.run()); 









// 私たち3修飾子与えるために時間のプロパティを定義するクラス3つの内部修飾子typescriptです

/ * 
    パブリック:内部現在のクラスで国民を、子クラスAは、外側がアクセスできる
    保護:クラスの外部からアクセスすることができ、現在のクラス、サブクラスがアクセスすることはできません保護のタイプ
    現在のクラス、サブクラス、クラスメソッドなし外部アクセス内の専用アクセス:プライベートを

    属性でない場合デフォルトの修飾子は、(公衆)公衆に追加されます

* / 



// パブリック:外アクセスすることができ、サブクラス、クラスpublic class 


            //    クラス人{ 

            //          パブリック名:文字列; / *パブリックプロパティ* / 

            //          コンストラクタを(名前:文字列){
            //              this.name =名; 
            //          } 

            //          RUN():文字列{ 

            //              戻りthis.name} {$ `motion` 
            //          } 
            //      } 
            //      //新しい新VARのP =人(「WANG 5「); 
            //      //アラート(p.run())


            //      クラスのWeb人{拡張
            //          コンストラクタ(名:文字列){ 

            //              スーパー(名前を); / *親クラスのコンストラクタを初期化します* / 
            / /          } 
            //          RUN():文字列{ 

            //              戻りthis.name} {$ `モーション- subclass` 
            //          } 
            //          ワーク(){ 

            //             警告( `$ {this.name} working`)
            //          } 
            //      } 

            //      VAR新しい新しいウェブW =( 'ジョン・ドウ'); 

            //      w.work(); 


        // クラスのパブリック外部アクセス属性


                //    {Personクラス

                //      パブリック名:文字列; / *パブリックプロパティ* / 

                //      コンストラクタ(名:文字列){ 
                //          this.name =名; 
                //      } 

                //      RUN():文字列{ 

                //          リターン$ `{モーションthis.name} ` 
                //      } 
                // } 

                // VARのP =パーソン新新( 'ヘクタール'); 

                // 警告(p.name); 





// 保護:保護等級の種類、することができますサブクラスクラスの外部からのアクセスは、アクセスすることはできません


            //   {Personクラス

            //          保護名:文字列; / *パブリックプロパティ* / 

            //          コンストラクタ(名:文字列){ 
            //              this.name =名; 
            //          } 

            //          RUN():文字列{ 

            //              リターン$ `{動きthis.name} ` 
            //          } 
            //      } 
                // VARのP =人新しい新しい( 'Wangwuは'); 
                // アラート(p.run())


                // クラスは、Web人{延び
                //      コンストラクタ(名前:文字列){ 

                //          スーパー(名); / * * /親クラスのコンストラクタを初期化
                //      }                   
                //      ワーク(){ 

                //         警告( `$ {this.name} working`)
                //      } 
                // } 

                // VAR新しい新しいウェブW =( 'ジョン・ドウ11。'); 

                // w.work(); 

                // アラート(w.run( )); 


                
        // 属性の型にアクセスすることはできません外側の保護外部クラス


                // クラス人{ 

                //      保護名:文字列; / *保護タイプ* / 

                //      コンストラクタ(名:文字列){ 
                //          this.name =名; 
                //      } 

                //      RUN():文字列{ 

                //          戻りthis.name} {$ `motion` 
                //      } 
                // } 

                // ( 'ヘクタール')するvar P =人の新しい新しい; 

                // アラート(P.名); 





//プライベート:プライベートアクセス可能なクラス、サブクラス、クラスメソッドなし外部アクセス
            

                // クラス人{ 

                //      プライベート名:文字列; / *プライベート* / 

                //      コンストラクタ(名:文字列){ 
                //          this.name =名前; 
                //      } 

                //      RUN():文字列{ 

                //          戻りthis.name} {$ `motion` 
                //      } 
                // } 


                // クラスのWeb人{拡張

                //      コンストラクタ(名:文字列){ 
                //を         スーパー(名前)
                //      } 

                //      仕事(){ 

                //          はconsole.log({$ ``作業this.name})
                //      } 
                // }



    {Personクラス

        プライベート名:文字列;   / * プライベート* / 

        コンストラクタ(名:文字列){ 
            この .nameの= 名; 
        } 

        RUN():文字列{ 

            リターン `$ { この.nameのモーション}` 
        } 
    } 

    のvar = P 新新人( 'ヘクタール' ); 

    警告(p.run());

 

おすすめ

転載: www.cnblogs.com/loaderman/p/11038636.html