当前位置:  技术问答>java相关

一个有关继承的问题!!!

    来源: 互联网  发布时间:2015-04-25

    本文导语:  我是一个初学者,今有一个有关继承性的问题想请各位高手指教,我定义了两个类一个Animal和他的子类Dog,程序如下: public class Animal { public Animal(String aString) { this.aString=new String(aString); } public  void  setString(S...

我是一个初学者,今有一个有关继承性的问题想请各位高手指教,我定义了两个类一个Animal和他的子类Dog,程序如下:
public class Animal
{
public Animal(String aString)
{
this.aString=new String(aString);
}
public  void  setString(String newString)
{
this.aString=newString;
}

public String toString()
{
return "this is a "+aString;
}
private String aString;
}
Dog类:
public class Dog extends Animal
{
public Dog(String aName)
{
super("Dog");
this.aName=aName;
aBreed="Unknown";
}
public Dog(String aName,String aBreed)
{
super("Dog");
this.aName=aName;
this.aBreed=aBreed;
}
private String aName;
private String aBreed;
}
并且我写了一个很简单的测试程序如下:
public class TryDog
{
public static void main(String[] args)
{
Dog aDog=new Dog("fido","chihuahua");
Dog starDog=new Dog("Lassie");
Dog.setString("chihuahua");
System.out.println(aDog);
System.out.println(starDog);
}
}
现在问题是:我现在编译产生错误,信息如下:
TryDog.java:7: non-static method setString(java.lang.String) cannot be reference
d from a static context
                Dog.setString("chihuahua");
                   ^
1 error
请各位高手指教我错误之处。

|
改为aDog.setString("chihuahua");

|
setString不是静态方法,不能用类名直接调用

|
当在一个类中要调用超类的方法的时候,有两种可能性:
 第一种,就是通过实例化类来产生对象,然后通过对象句柄来调用方法,如上例中的adog.setString();
 第二钟,是一种特殊情况,用类名来调用静态方法,这种方法前以static为标记
所谓静态,就是一种共享机制,如静态变量,在一个程序中无论实例化生成多少对象,在内存中只分得一块内存,这块内存可供所用这种对象访问,所以在调用静态方法和静态变量时可以直接通过类名来调用。
再者,你的类中并没有aString变量,所以用this.aString也是一种错误

    
 
 

您可能感兴趣的文章:

  • 有关Java构造函数的问题之三——继承性
  • 有关继承中方法覆盖时访问控制的问题?
  • 《thinking in java》一个有关继承的程序不明白,请讲一讲,谢谢
  • 求教有关smartupload的问题,有关就给分!!
  • 有关在sco unix5.0.4下有关网卡设置的问题(非常急,高分相送)
  • 有关snmp的一个很菜,但是困扰了我很久的问题,有关工作原理的,望大家赐教
  • 有关ResultSet的问题,帮助解决问题者另外加分...
  • (菜鸟问题)有关目录中文件执行的问题???
  • 有关Qt下编译的环境问题
  • 有关裁减内核及shell命令的问题
  • 有关cocoon的问题??
  • Helper! 有关Jbuilder使用问题???
  • 有关swing的问题,请高手回答
  • 一个有关分数的问题
  • 有关pcmaclan的打印机共享问题
  • 请教有关samba共享名大小写的问题
  • 想看一下吗?有关swing 组件的问题?
  • 有关L的问题(菜鸟求教)???
  • 有关jsp服务器的一个问题
  • java 进阶级问题,有关网络的问题,请多多帮助
  • 有关Liunx 的最低配置问题
  • 有关环境的问题
  • 请教有关konqueror 问题?
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • ​有关Docker的八个令人难以置信的事实
  • 有关Java构造函数的问题之三——继承性 iis7站长之家
  • 求有关png图像处理的libpng库的有关中文资料
  • 大家推荐一下有关LINUX7有关的网络编程的书。最好是比较全面的!比较经典的。
  • 有关KDevelop-3.0.4-0.1.i386.rpm的有关软件包
  • 有关KDevelop编程的资料
  • 有关集群与数据同步
  • 请教有关英文简历方面的词句!
  • 有关报表打印(在JAVA,WEB下应用)急用!
  • 请各位大哥告知JAVA中消息机制的有关资料,拜托!
  • 有关jbuilder
  • 我想看看有关Linux和Unix的源码,有什么好的建议
  • 有关J2ME的帮助文档!
  • 100分求助 能不能提供一些有关图像分割的算法和实现代码!谢谢
  • 在哪里可以弄到有关tomcat配置方面的资料?
  • 请问哪里有jboss有关配置的教程,最好是中文的,先谢了
  • 哪位兄弟知道有关QT的资料可以下,,谢谢!
  • 有关学习java的电子图书网址
  • 请介绍一本有关i386体系结构、汇编的书。
  • 有关shell返回值
  • 高分请教:请问怎么才能得到最近所有有关文件操作(新建,删除等)的记录


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3