java 编程中子类和父类不在同一个包中的调用不懂

Father.java;
package tom.height;
public class Father
{
int height;
protected int money;
public int weight;
public Father(int m){
{
money=m;
}
protected int getmoney()
{return money;<br/>}
void setMoney(int newmoney)
{money=newmoney;<br/>}
}
jerry.java;
package sun.com;
import tom.jiafei.Father;
public class jerry extends father{
pbulic jerry()
{
super (20)
}
public static void main(Strings args[]){
{jerry jerry=new jerry();<br/>jerry.height=12;(为什么这个是错误的)(说是jerry没有继承友好的height是什么原因)<br/>jerry.weight=200;<br/>jerry.money=800;<br/>int m=jerry.getmoney();<br/>jerry.setmoney(300);(也是错误的)(同上面是同样的理由)(我不懂是什么原因有哪位高手能不能帮哈我)<br/>System.out.println("m="+m);<br/>}
}

因为父类中是这样声明的
int height
意思是只能在本包中被调用.
如果要在其他包中调用,要这样声明
protected int height
或者
public int height

setMoney的道理也一样.
要加上public或者protected修饰词
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-04-12
你是想做的什么呀~~

仿照你的代码写了些代码 不知道是不是你想要的那种结果

package Demo;
public class Father {
private int Height;
private int Width;
private int Money;

public int getHeight() {
return Height;
}
public void setHeight(int height) {
Height = height;
}
public int getWidth() {
return Width;
}
public void setWidth(int width) {
Width = width;
}
public int getMoney() {
return Money;
}
public void setMoney(int money) {
Money = money;
}
}

package Test;
import Demo.Father;
public class Jerry extends Father{

public static void main(String[] args) {
Jerry sonerSon = new Jerry ();
sonerSon.setHeight(100);
sonerSon.setMoney(50);
sonerSon.setWidth(200);
System.out.println(sonerSon.getHeight());
System.out.println(sonerSon.getWidth());
System.out.println(sonerSon.getMoney());
}

}
第2个回答  2013-04-12
public
可以被任何类访问
protected
可以被同一包中的所有类访问
可以被所有子类访问
子类没有在同一包中也可以访问
private
只能够被当前类的方法访问
缺省
无访问修饰符
可以被同一包中的所有类访问
如果子类没有在同一个包中,也不能访问

height,setmoney都是默认访问修饰符,所以在子类不能访问
而且你的import也写错了.mport tom.jiafei.Father;
第3个回答  2013-04-12
作用域 当前类 同一package 子孙类 其他package
public √ √ √ √
protected √ √ √ ×
friendly √ √ × ×
private √ × × ×
不写时默认为friendly
第4个回答  2013-04-12
您的要求不清楚哦,首先你jerry类import类路径错了吧,tom.height.father其次类名最好首字母大写,要养成习惯哦。
相似回答