亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

黑馬程序員系列第六篇面向對象基礎

2019-11-14 15:02:58
字體:
來源:轉載
供稿:網友

asp.net+Android+IOS開發  、Net培訓、期待與您交流!

 

(前言:本篇文章主要依據畢向東老師的課程視頻整理而成,如要詳細學習,請觀看畢老師視頻  百度網盤鏈接地址:http://pan.baidu.com/s/1mgngVl2)

 

目錄:1、面向對象三大特性    2、類和對象    3、內部類  

 

1、面向對象三大特性    封裝、繼承、多態

封裝

  概念:是指隱藏對象的屬性和實現細節,僅對外提供公共訪問方式。 

  好處:將變化隔離;便于使用;提高重用性;安全性。 

  封裝原則:將不需要對外提供的內容都隱藏起來,把屬性都隱藏,提供公共方法對其訪問。  

繼承

  好處:子類將得到基類中的所有域和方法,提高了代碼的復用性;讓類與類之間產生了關系,提供了另一個特征多態的前提。

多態

簡單例子:父類引用或者接口的引用指向了自己的子類對象。//Animal a = new Cat(); 

多態的好處:提高了程序的擴展性。 

多態的弊端:當父類引用指向子類對象時,雖然提高了擴展性,但是只能訪問父類中具備的方法,不可以訪問子類中特有的方法。(前期不能使用后期產生的功能,即訪問的局限性) 

多態的前提: 1:必須要有關系,比如繼承、或者實現。    2:通常會有覆蓋操作。  

 

關于基于繼承的多態的一個代碼示例

 1 /* 2 對象的多態性:動物 x = new 貓(); 3 函數的多態性:函數重載、重寫 4  5 1、多態的體現 6         父類的引用指向了自己的子類對象 7         父類的引用也可以接收自己的對象 8 2、多態的前提 9         必須是類與類之間只有關系,要么繼承或實現10         通常還有一個前提,存在覆蓋11 3、多態的好處12         多態的出現大大的提高了程序的擴展性13 4、多態的弊端14         只能使用父類的引用訪問父類的成員15 5、多態的應用16 17 6、注意事項18 */19 20 /*21 需求:22 貓,狗。23 */24 25 abstract class Animal26 {27     abstract void eat();28 }29 30 class Cat extends Animal31 {32     public void eat()33     {34         System.out.);35     }36     public void catchMouse()37     {38         System.out.println("抓老鼠");39     }40 }41 42 class Dog extends Animal43 {44     public void eat()45     {46         System.out.println("吃骨頭");47     }48     public void kanJia()49     {50         System.out.println("看家");51     }52 }53 54 class DuoTaiDemo55 {56     public static void main(String[] args)57     {58         function(new Cat());59         function(new Dog());60         61         Animal a = new Cat();//向上轉型62         a.eat();63         64         Cat c = (Cat)a;//向下轉型65         c.catchMouse();66         67         68     }69     70     public static void function(Animal a)71     {72         a.eat();73         //用于子類型有限74         //或判斷所屬類型進而使用其特有方法75         if(a instanceof Cat)76         {77             Cat c = (Cat)a;78             c.catchMouse();79         }80         else if(a instanceof Dog)81         {82             Dog c = (Dog)a;83             c.kanJia();84         }85     }86     87     88 }    

 

2、類和對象  

類 :一個類可以被定義為描述行為的模板/藍色印花/指出其類型支持的對象。

對象 :對象具有狀態和行為。例如:狗有狀態 - 顏色,名稱,繁殖以及行為,搖頭晃腦,吠叫,吃。對象是類的實例。

從類創建對象時有三個步驟:

     1、聲明:  變量聲明,一個變量名的對象類型。

     2、實例: “new”關鍵字是用來創建對象。

     3、初始化:  關鍵字 new 后跟調用一個構造函數。這個調用初始化新的對象。

 

關于構建類的一個簡單例子:

 1 public class Employee{ 2    String name; 3    int age; 4    String designation; 5    double salary; 6      7    // This is the constructor of the class Employee 8    public Employee(String name){ 9       this.name = name;10    }11    // Assign the age of the Employee  to the variable age.12    public void empAge(int empAge){13       age =  empAge;14    }15    /* Assign the designation to the variable designation.*/16    public void empDesignation(String empDesig){17       designation = empDesig;18    }19    /* Assign the salary to the variable    salary.*/20    public void empSalary(double empSalary){21       salary = empSalary;22    }23    /* Print the Employee details */24    public void printEmployee(){25       System.out.println("Name:"+ name );26       System.out.println("Age:" + age );27       System.out.println("Designation:" + designation );28       System.out.println("Salary:" + salary);29    }30 }

 

 

3、內部類  

 定義:將一個類的定義放在另一個類的定義內部。

規則:內部類的創建和普通類沒區別;

內部類可以直接訪問所屬外部類中的成員(包括私有的)

訪問格式:外部類名.this.成員名,成員名不沖突是可直接用成員名調用,所屬的外部類要訪問內部類必須要建立內部類對象。

局部內部類:1、不可以被成員修飾符修飾   2、可以直接訪問外部類的成員,因為還只持有外部類的引用,在所在的局部中只能訪問它所在的局部中的用final修飾的變量。

匿名內部類(其實就是內部類的一種簡寫格式):定義匿名內部類的前提----內部類必須是繼承一個類或者實現接口;

格式:new 父類名字(){子類實現的內容};

 

幾種內部類的代碼演示:

 1     public static void main(String[] args) { 2         //創建非靜態內部類的對象 3         Test.TestInner tt=new Test().new TestInner(); 4         tt.show1(); 5         tt.show(); 6         tt.show2(); 7         //創建靜態內部類的對象 8         Test.Test1Inner tt1=new Test.Test1Inner(); 9         tt1.show();10         //直接調用靜態內部類中的靜態方法11         Test.Test1Inner.show1();12         13         Test tn=new Test();14         tn.show();//驗證局部內部類15         tn.show1();//驗證匿名內部類16     }17 18 }19 class Test{20     int a=1;21     public void show(){22         final int  a=90;23         System.out.println("Test show a:"+a);24         new TestInner().show();//外部類非靜態方法訪問非靜態內部類中的方法25         //局部內部類,調用方法中的局部變量要被final修飾26         class MethodClass{27             public void show1(){28                  System.out.println("Test show1 MethodClass show1 a:"+a);29             }30         }31         new MethodClass().show1();32     }33     public void show1(){34         //匿名內部類,直接在對象后使用其重寫的方法,調用方法中的局部變量要被final修飾35         final int a=80;36         new Test2(){37             @Override38             public void show() {39                 System.out.println("大家好,這里是Test類中的show1方法中繼承了Test2抽象類的匿名內部類..."+a);40             }41             42         }.show();43     }44     //普通內部類45     class TestInner{46         int a=2;47         public void show(){48             System.out.println("TestInner show a:"+a);49         }50         public void show1(){51             System.out.println("Test TestInner show1----:");52             Test.this.show();//非靜態內部類訪問所屬外部類的非靜態方法53         }    54         public void show2(){55             System.out.println("Test TestInner show2----:");56             new Test.Test1Inner().show();//非靜態內部類訪問所屬外部類的靜態類的方法57         }58     }59     //靜態內部類60     static class Test1Inner{61          static int a=9;62          public void show(){63            new Test().new TestInner().show();//靜態內部類調用非靜態內部類中的方法64          }65          public static void show1(){66              System.out.println("Test Test1Inner show1 a:"+a);67          }68     }69 }70 abstract class Test2{71     public abstract void show();72 }

 

 

 

       初學者難免錯誤,歡迎評判指教,持續更正ing...........

 

ASP.Net+Android+IOS開發  、Net培訓、期待與您交流!


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
色樱桃影院亚洲精品影院| 国产精品久久精品| 成人亚洲激情网| 日韩美女福利视频| 欧美视频一区二区三区…| 国产成人精品av在线| 日韩av在线免费播放| 美女国内精品自产拍在线播放| 成人免费午夜电影| 国产日韩精品入口| 日韩av黄色在线观看| 欧美激情久久久久久| 成人美女av在线直播| 成人a免费视频| 欧美性猛交xxxx乱大交蜜桃| 精品视频在线观看日韩| 国产午夜精品全部视频播放| www亚洲欧美| 91精品视频观看| 亚洲成av人影院在线观看| 亚洲人成电影网站色…| 日韩精品免费视频| 国产精品综合网站| 精品中文字幕在线观看| 国产美女精品免费电影| 九九热这里只有精品6| 亚洲欧洲自拍偷拍| 亚洲自拍偷拍一区| 日本精品视频在线播放| 中文字幕亚洲第一| 国内精品视频在线| 午夜伦理精品一区| 欧美精品在线观看| 最近2019中文免费高清视频观看www99| 欧美午夜性色大片在线观看| 韩日欧美一区二区| 另类美女黄大片| 国产精品亚洲激情| 亚洲欧美制服第一页| 欧美日韩亚洲一区二区三区| 亚洲xxxx做受欧美| 国产精品久久99久久| 亚洲男人天堂2019| 国产欧美精品在线| 日韩精品视频中文在线观看| 91精品国产自产91精品| 欲色天天网综合久久| 欧美乱妇高清无乱码| 欧美多人爱爱视频网站| 38少妇精品导航| 色老头一区二区三区在线观看| 日本久久久a级免费| 国产在线拍揄自揄视频不卡99| 97在线看免费观看视频在线观看| 欧美精品videossex88| 欧美精品在线第一页| 成人久久一区二区| xxxx性欧美| 久久综合久中文字幕青草| 中文字幕精品网| 亚洲欧美日韩精品久久奇米色影视| 成人激情免费在线| 91在线观看欧美日韩| 亚洲一区美女视频在线观看免费| 91精品国产91久久久久久| 国产精品国语对白| 97av视频在线| 亚洲新中文字幕| 日韩视频免费观看| 色偷偷91综合久久噜噜| 国模极品一区二区三区| 久久久免费高清电视剧观看| 日韩精品一二三四区| 91久久精品国产91久久| 精品久久久国产| 国产婷婷色综合av蜜臀av| 欧美日韩国产麻豆| 亚洲国产古装精品网站| 北条麻妃99精品青青久久| 欧美日韩国产中字| 国产精品视频久久| 国产精品极品在线| 91免费国产网站| 久久久久国产精品免费| 国产精品观看在线亚洲人成网| 精品中文字幕在线2019| 日韩三级影视基地| 久久影视电视剧免费网站| 欧美激情网站在线观看| 国产成人福利视频| 久久免费视频这里只有精品| 国产一区二区黑人欧美xxxx| 欧美成人午夜激情| 国产成人拍精品视频午夜网站| 亚洲激情视频网站| 国产精自产拍久久久久久蜜| 久久久免费精品视频| 一区二区亚洲精品国产| 国产主播在线一区| 成人午夜激情网| 九九热这里只有在线精品视| 亚洲精品久久久久久久久久久| 亚洲跨种族黑人xxx| 欧美成人免费在线视频| 日韩美女在线播放| 91大神在线播放精品| 黑人极品videos精品欧美裸| 欧美精品一区在线播放| 亚洲新声在线观看| 亚洲欧美日韩一区在线| 日韩电影在线观看免费| 欧洲成人午夜免费大片| 成人激情视频网| 亚洲欧美一区二区三区情侣bbw| 亚洲欧美日韩中文在线| 亚洲免费视频观看| 亚洲国产天堂久久国产91| 久久国产精品久久久| 一区二区国产精品视频| 欧美一区二三区| 亚洲久久久久久久久久| 精品香蕉一区二区三区| 欧美激情亚洲另类| 在线日韩第一页| 成人亚洲综合色就1024| 高清欧美性猛交xxxx| 久久亚洲综合国产精品99麻豆精品福利| 日韩欧美综合在线视频| 久久精品国产v日韩v亚洲| 亚洲自拍小视频免费观看| 日韩精品在线播放| 欧美性jizz18性欧美| 亚洲娇小xxxx欧美娇小| 91精品啪在线观看麻豆免费| 亚洲激情在线观看视频免费| 亚洲第一免费网站| 国产高清视频一区三区| 欧美黄色片视频| 亚洲免费视频在线观看| 国产69精品99久久久久久宅男| 久久噜噜噜精品国产亚洲综合| 97欧美精品一区二区三区| 日韩av一区在线观看| 欧美最顶级的aⅴ艳星| 久久99久国产精品黄毛片入口| 日本久久精品视频| 欧美日本高清一区| 91嫩草在线视频| 欧美激情极品视频| 91免费在线视频网站| 欧美激情精品久久久久| 亚洲精品久久久久| 国产精品一二三视频| 亚洲最新在线视频| 日韩亚洲第一页| 亚洲视频一区二区| 久久99久久亚洲国产| 欧美性xxxxx极品娇小| 久久亚洲精品网站| 国产婷婷成人久久av免费高清| 国产视频自拍一区| 久久精品一区中文字幕| 91中文字幕在线观看| 红桃视频成人在线观看|