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

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

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

    Java蜘蛛人 歡迎大家

    歡迎大家 來到我的blog , 如果我身邊的朋友 有什么不懂可以直接來問我 我會細心的幫助你的. 如果網絡上的朋友有什么不懂的 可以加我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;   //父類 可以被子類轉換 .... 但是子類 不能被父類轉換.
    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)轉換為: Manager
                     /* 我試圖把staff[1]轉換為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個參數
    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);  //關鍵字 繼承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)的綁定的意思 . 假如 調用 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ā)表評論。


    網站導航:
     
    主站蜘蛛池模板: 羞羞视频免费观看| 亚洲av永久无码精品三区在线4| 亚洲av无码专区在线电影| 亚洲人成免费电影| 久久精品a亚洲国产v高清不卡| 永久免费av无码入口国语片| 日韩精品亚洲aⅴ在线影院| 一级特级女人18毛片免费视频| 亚洲AV无码乱码在线观看牲色| 美女隐私免费视频看| 亚洲国产成人精品女人久久久 | 羞羞网站免费观看| 亚洲成人国产精品| 国产免费福利体检区久久| 男性gay黄免费网站| www.91亚洲| 一区二区三区亚洲| 国产黄色免费网站| 亚洲av无码成人精品区一本二本| 国产无遮挡色视频免费视频| 日韩大片在线永久免费观看网站| 91精品国产免费网站| 久久久久亚洲AV无码专区首JN| 免费大片黄在线观看yw| 红杏亚洲影院一区二区三区| 黄页免费在线观看| 亚洲另类春色校园小说| 国产美女被遭强高潮免费网站| 九九久久精品国产免费看小说| 国产成人精品日本亚洲网站| 深夜特黄a级毛片免费播放| 久久久久久亚洲精品不卡| 免费无码成人AV在线播放不卡| 日本亚洲免费无线码 | 日韩免费在线观看| A毛片毛片看免费| 亚洲专区中文字幕| 亚洲一级特黄无码片| 久久久高清免费视频| 一级女性全黄生活片免费看| 亚洲网站在线播放|