亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

課后練習 求指導

父類 Shape

package com.imooc2;

public abstract class Shape {

private float a=5;

private float b=7;

private float d=10;

public abstract void L();

public abstract void S();

}


子類 Rectangle

package com.imooc2;

public class Rectangle extends Shape {

@Override

public void L() {

// TODO Auto-generated method stub

System.out.println("矩形的周長是:"+(a+b)); ? ?//在這里會報錯

}

@Override

public void S() {

// TODO Auto-generated method stub

System.out.println("矩形的面積是:"+(a*b)); ? ? //在這里會報錯

}

}


這是怎么回事啊? ?求幫助。謝謝

正在回答

2 回答

a,b是父類私有變量,子類不能訪問,更改為protected吧

0 回復 有任何疑惑可以回復我~

父類 Vechicle

package com.vehicle;

public class Vehicle {

private int num;

private String media;

public void talk(){

System.out.println("交通工具是用來載人的!");

}

}

子類 Car

package com.vehicle;

public class Car extends Vehicle {

private int num=40; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

private String media="陸地";

public void talk(){

System.out.println("汽車在"+media+"上行駛,共載人"+num+"個!");

}

}


這個 是可以的 ?, 是 因為 ?父類里面沒有賦值的原因嗎?


0 回復 有任何疑惑可以回復我~
#1

Mefa

這里打印出來的變量是car類自身的,car類的私有變量media、num和父類的私有變量只是重名了,并不是說car類中的私有變量覆蓋了父類中的同名變量,兩者只是同名而已。就算你父類里邊的變量賦值了,上邊的輸出結果打印的一樣是car類中定義的變量值。另外這種寫法是訪問不到父類的同名私有成員變量。
2015-06-05 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
Java入門第二季 升級版
  • 參與學習       531142    人
  • 解答問題       6326    個

課程升級!以終為始告別枯燥,在開發和重構中體會Java面向對象編程的奧妙

進入課程

課后練習 求指導

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號