outputFile 158 '\n'; // write some delimited numbers
專注于為中小企業(yè)提供成都網(wǎng)站設(shè)計、成都做網(wǎng)站服務,電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)西夏免費做網(wǎng)站提供優(yōu)質(zhì)的服務。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了1000多家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實現(xiàn)規(guī)模擴充和轉(zhuǎn)變。
std::vector unsigned char buf;
outputFile.write( buf[0], buf.size() );
final 和static 的方法不能被重寫 但是靜態(tài)的方法可以被重新定義
你那個不是重寫 是重新定義 重新定義不屬于多態(tài)范疇
所以他只看引用類型 但是java也強烈建議你千萬不要用引用去訪問靜態(tài)變量或靜態(tài)方法,因為那樣你會邏輯混亂
你用的f其實就是子類型,根本沒有多態(tài)的,就算是調(diào)用重寫的非靜態(tài)方法還是體現(xiàn)不出多態(tài)性
那么其調(diào)用的grow一定是重新定義的子類方法
然而
Amphibian.grow(f);
來說 你在grow參數(shù)里聲明的是父類的引用 但是你卻把一個子類實例傳遞進來
多態(tài)性在這體現(xiàn)了 首先調(diào)用的是父類的靜態(tài)沒疑問了 然而a.eat();出現(xiàn)了多態(tài)行為
父類引用指向子類對象 調(diào)用的是子類重寫的方法
代碼一不是重寫
重寫規(guī)則是
參數(shù)列表必須與被重寫方法的相同
返回類型必須與被重寫方法的返回類型相同
代碼一中 public void method()和 public float method(String s)參數(shù)列表不同,所以不是重寫
代碼 二中public float getNum() 和 public void getNum() 返回類型不同,所以報錯
在Java中如何來定義重寫:Java程序中類的繼承特性可以產(chǎn)生一個子類,子類繼承父類就擁有了父類的非私有的屬性(方法和變量),在子類中可以增加自己的屬性(方法和變量),同時也可以對父類中的方法進行擴展,以增強自己的功能,這樣就稱之為重寫,也稱為復寫或者覆蓋。所謂方法重寫就是子類的方法和父類中繼承下來的方法具有完全相同的方法名、返回值類型、方法的參數(shù)個數(shù)以及參數(shù)類型,這樣才能被稱為方法重寫。
代碼體現(xiàn):
// 這是父類的定義
public class Person {
public void eat() {
System.out.println("=====這是父類Person的eat方法=======");
}
}
// 這是子類的定義
public class Student extends Person {
@Override
public void eat() {
System.out.println("===這是子類Student的eat方法===");
}
// main方法測試
public static void main(String[] args) {
Student student = new Student();
student.eat(); //輸出:===這是子類Student的eat方法===
}
}
子類重寫父類的方法后,在實例化子類的時候則調(diào)用的是子類中的方法,父類的方法就如同被覆蓋了一樣。如果在子類中需要調(diào)用父類的方法,則在子類方法中使用super關(guān)鍵字調(diào)用父類的方法,格式:super.父類中的方法名。
方法重寫就是子類的方法覆蓋了父類的方法,即子類的方法名和父類的方法名相同
class People
{
protected double weight,height;
public void speakHello()
{
System.out.println("yayawawa");
}
public void averageHeight()
{
height=173;
System.out.println("average height:"+height);
}
public void averageWeight()
{
weight=70;
System.out.println("average weight:"+weight);
}
}
class ChinaPeople extends People
{
//代碼1//重寫public void speakHello()方法
// 要求輸出類似“你好,吃飯了嗎”這樣的漢語信息
public void speakHello()
{
System.out.println("你好,吃飯了嗎");
}
//代碼2//重寫public void averageHeight()方法
//要求輸出類似“中國人的平均身高:173.0厘米”這樣的漢語信息
public void averageHeight()
{
System.out.println("中國人的平均身高:173.0厘米");
}
//代碼3//重寫public void averageWeight()方法
//要求輸出類似“中國人的平均體重:67.34公斤”這樣的漢語信息
public void averageWeight()
{
System.out.println("中國人的平均體重:67.34公斤");
}
//System.out.println(this.speakHello()+this.averageHeight()+this.averageWeight());
public void chinaGongfu()
{
System.out.println("坐如鐘,站如松,睡如弓");
}
}
class AmericanPeople extends People
{
//代碼5//重寫public void speakHello()方法
//要求輸出類似“How do you do”這樣的英語信息
public void speakHello()
{
System.out.println("How do you do");
}
//代碼6//重寫public void averageHeight()方法
public void averageHeight()
{
System.out.println("How do you do");
}
//代碼7//重寫public void averageWeight()方法
public void averageWeight()
{
System.out.println("How do you do");
}
public void americanBoxing()
{
System.out.println("直拳,勾拳");
}
}
class BeijingPeople extends ChinaPeople
{
//代碼9//重寫public void speakHello()方法
//要求輸出類似“您好”這樣的漢語信息
public void speakHello()
{
System.out.println("您好!");
}
//代碼10//重寫public void averageHeight()方法
public void averageHeight()
{
System.out.println("您好!");
}
//代碼11//重寫public void averageWeight()方法
public void averageWeight()
{
System.out.println("您好!");
}
public void beijingOpera()
{
System.out.println("京劇術(shù)語");
}
}
public class Example
{
public static void main(String args[])
{
ChinaPeople chinaPeople=new ChinaPeople();
AmericanPeople americanPeople=new AmericanPeople();
BeijingPeople beijingPeople=new BeijingPeople();
chinaPeople.speakHello();
americanPeople.speakHello();
beijingPeople.speakHello();
chinaPeople.averageHeight();
americanPeople.averageHeight();
beijingPeople.averageHeight();
chinaPeople.averageWeight();
americanPeople.averageWeight();
beijingPeople.averageWeight();
beijingPeople.beijingOpera();
americanPeople.americanBoxing();
beijingPeople.beijingOpera();
beijingPeople.chinaGongfu();
}
}
本文題目:重寫java代碼 重寫 java
文章網(wǎng)址:http://vcdvsql.cn/article10/hepddo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導航、、品牌網(wǎng)站制作、移動網(wǎng)站建設(shè)、品牌網(wǎng)站設(shè)計、網(wǎng)站策劃
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)