java基礎概念整理(三)

來源:互聯網
上載者:User

標籤:gen   轉型   物件導向編程   不能   因此   java基礎   .sh   移動   hone   

1、對象的上轉型

    對象的上轉型不能調用和使用子類對象新增的成員和變數,不能調用子類新增的方法。   

  上轉型對象可以訪問子類繼承或者隱藏的成員變數,也可以調用子類繼承或者子類重寫的執行個體方法。因此如果子類重寫了父類的某個執行個體方法後,當對象的上轉型對象調用這個執行個體方法時一定是調用了子類重新寫的執行個體方法。

2、抽象方法

 對於abstract方法,只允許聲明,不允許實現,不允許使用final和abstract同時修飾一個方法或者一個類,abstract方法只能是執行個體方法,abstract類中可以有abstract方法。非abstract類中不可以有abstract方法。

3、物件導向編程,經常會使用到abstract類,abstract類只關心操作,不關係這些操作的具體實現的細節問題,

package com.Example1;

public class Exmaple5_12 {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        MobileTelephone telephone = new MobileTelephone();
        SIM sim = new SIMofChinaMobile();
        sim.setNumber("2454545");
        telephone.userSIM(sim);
        telephone.showMessage();
        sim = new SIMofChinaUnicon();
        sim.setNumber("454664646");
        telephone.userSIM(sim);
        telephone.showMessage();

    }

}

abstract class SIM {
    public abstract void setNumber(String n);

    public abstract String giveNumber();

    public abstract String giveCorpName();
}

class MobileTelephone {
    SIM card;

    public void userSIM(SIM card) {
        this.card = card;
    }

    public void showMessage() {
        System.out.println("use card name is" + card.giveCorpName());
        System.out.println("SIm‘number is" + card.giveNumber());
    }
}

class SIMofChinaMobile extends SIM {
    String number;

    @Override
    public void setNumber(String n) {
        // TODO Auto-generated method stub
        number = n;

    }

    @Override
    public String giveNumber() {
        // TODO Auto-generated method stub
        return number;
    }

    @Override
    public String giveCorpName() {
        // TODO Auto-generated method stub
        return "聯通卡";
    }

}

class SIMofChinaUnicon extends SIM {
    String number;

    @Override
    public void setNumber(String n) {
        // TODO Auto-generated method stub
        number = n;

    }

    @Override
    public String giveNumber() {
        // TODO Auto-generated method stub
        return number;
    }

    @Override
    public String giveCorpName() {
        // TODO Auto-generated method stub
        return "中國移動";
    }

}

4、繼承是一種已有的類建立新的類的機制,利用繼承,可以建立一個共有的屬性的一般類,根據一般類建立據用特殊屬性的新類。

    

java基礎概念整理(三)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.