<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Java蜘蛛人 歡迎大家

    歡迎大家 來到我的blog , 如果我身邊的朋友 有什么不懂可以直接來問我 我會細心的幫助你的. 如果網(wǎng)絡(luò)上的朋友有什么不懂的 可以加我Java蜘蛛人 QQ48187537
    posts - 54, comments - 192, trackbacks - 0, articles - 1
     1
     2import java.util.*;
     3public class ManagerTest
     4{
     5    public static void main (String[] args) 
     6    {
     7        Manager boss=new Manager("xiaoqiao",8000,1989,04,11);
     8        boss.SetBonus(5000);
     9        Employee [] staff=new Employee[3];
    10        staff[0]=boss;   //父類 可以被子類轉(zhuǎn)換 .... 但是子類 不能被父類轉(zhuǎn)換.
    11        staff[1]=new Employee("dddd",5000,1989,10,12);
    12        staff[2]=new Employee("aaaaa",4000,1988,11,12);

                 if(staff[1] instanceof Manager)  //staff[1] 能不能 (instanceof)轉(zhuǎn)換為: Manager
                     /* 我試圖把staff[1]轉(zhuǎn)換為Manager 但是失敗了 */
                   {
                       Manager aa=(Manager)staff[1];
                   }
             else
               {
                 System.out.println("不能裝換");
                }


    13        
    14        for(Employee e:staff)
    15        System.out.println("mingzi \t"+e.getName()+"\t gongzi \t"+e.getSalary()+"\t shengri \t"+e.getHrireDay());
    16    }
    17    
    18}
    19class Employee
    20{
    21    public Employee(String n,double s,int year,int month,int day)   //首先我們傳5個參數(shù)
    22    {
    23        name=n;
    24        salary=s;
    25        GregorianCalendar calendar =new GregorianCalendar(year,month -1,day);
    26        hireDay=calendar.getTime();
    27    }
    28    public String getName()  //得到名字
    29    {
    30        return name;
    31    }
    32    public double getSalary()  //得到工資
    33    {
    34        return salary;
    35    }
    36    public Date getHrireDay()  //得到年齡
    37    {
    38        return hireDay;
    39    }
    40    public void raiseSalary(double byPercent)
    41    {
    42        double raise=salary*byPercent/100;
    43         salary+=raise;
    44    }
    45    private String name;  
    46    private double salary;
    47    private Date hireDay;
    48}
    49class Manager extends Employee  //定義一個 Manager 類繼承 Employee
    50{
    51    /**
    52     @parm n the employee's name 
    53     @parm s the salary
    54     @parm year the  hire year
    55     @parm month the hire month 
    56     @parm day the hire day
    57     */

    58     public Manager(String n,double s,int year,int month,int day)
    59     {
    60         super(n,s,year,month,day);  //關(guān)鍵字 繼承Employee  里的方法
    61         bonus=0;
    62     }
    63     public double getSalary()  //定義一個方法重載..
    64     {
    65         double baseSalary=super.getSalary();
    66         return baseSalary+bonus;        //就是在工資的基本上加上獎金
    67     }
    68     public void SetBonus(double b)  //定義一個方法 存儲獎金
    69     {
    70         bonus=b;
    71     }
    72     private double bonus;
    73}

    動態(tài)的綁定的意思 . 假如 調(diào)用 x.f("Hello")  編譯器會挑 x.f(String) 不會挑x.f(int)
     假如你子類想覆蓋 父類的方法 . 那么方法返回的類型必須是一樣的
    比如:
    Employee 類中有
    public Employee  gethaha()
    {
    ...........
    }
    那么在后面的 Manager中可以 按照一樣的方法

    public Manager gethaha()
    {
    ...........
    }

    如果你想要覆蓋一個父類的方法的時候. 你的子類的方法不能低于父類的可見性
    比如.父類是 public .  那么你子類覆蓋他  也必須是 public  否則會出現(xiàn)錯誤的...
    今天繼承就寫這么多.

    如果你想阻止繼承的話.  就用 final 修飾符..  可以看看下面的代碼就會懂了
     public class Test    //假如在這加一個final就會報錯. 因為一個被final修飾的類 是不能繼承的.
    {
        private String name;
        private 
    double salary;
        Test(String  name,
    double salary)
        {
            this.name
    =name;
            this.salary
    =salary;
        }
         
    public final String getName() //假如在這加一個 final 編譯不會影響什么. 因為子類沒有覆蓋這個方法
        {
            
    return name;
        }
        
    public  double getsalary()  //然而我們在這加一個 final 編譯就會報錯了.因為子類覆蓋了這個類.
        {
            
    return salary;
        }
        
    public static void main (String[] args)
        {
            Test1 t1
    =new Test1("xiaoqiao",80000);
            t1.aaa(
    600);
            System.out.println("小橋
    ="+t1.getName()+"\t"+t1.getsalary());
            
        }
    }
     class Test1  extends Test
    {
        private 
    double bb;
        
    public Test1(String name,double salary)
        {
            super(name,salary);
        }
      
    public double getsalary()
        {
            
    double aa=super.getsalary();
            
    return aa+bb;
        }
        
    public void aaa(double bb)
        {
            this.bb
    =bb;
        }
    }


                                                                                                             
                                                                                                                        ___作者: 鄭成橋

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 亚洲国产精品国自产电影| 99视频免费播放| 国产精品亚洲片在线va| 亚洲精品国产自在久久| 最近中文字幕mv免费高清视频7| a级毛片在线免费观看| 婷婷国产偷v国产偷v亚洲| 亚洲一区在线视频观看| 久久久久亚洲av无码专区喷水 | 内射少妇36P亚洲区| 亚洲国产综合精品中文字幕| 妞干网在线免费视频| 91精品国产免费入口| 野花香在线视频免费观看大全| 日韩成人毛片高清视频免费看| 亚洲精华国产精华精华液| 亚洲福利视频一区二区三区| 亚洲国产精品一区二区成人片国内 | 免费三级毛片电影片| 精品无码无人网站免费视频 | 久久亚洲综合色一区二区三区| 亚洲av无码成人精品区在线播放| 德国女人一级毛片免费| 在线观看的免费网站| 18禁网站免费无遮挡无码中文| 国产成人精品免费视| 蜜桃AV无码免费看永久| 人妻丰满熟妇无码区免费| 美女视频黄的免费视频网页| a毛片免费观看完整| 91视频免费网站| 国产精品网站在线观看免费传媒| 99在线免费视频| 无码精品一区二区三区免费视频| 国产精品免费福利久久| 人妻丰满熟妇无码区免费 | 亚洲福利视频导航| 亚洲精品视频在线播放| 亚洲丝袜中文字幕| 亚洲国产成人无码AV在线| 久久亚洲精品无码gv|