A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 罗广伟 中级黑马   /  2013-1-19 20:55  /  2283 人查看  /  12 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 罗广伟 于 2013-1-20 08:16 编辑

public class Object
{
        Object()
        {
                System.out.println("object构造函数运行");
        }
}
class demo extends Object
{
        void run()
        {
                System.out.println("run");
        }
        public static void main(String[] args)
        {
                demo a= new demo();
                a.run();
        }
}
//问题:demo继承object,按理说object会继承所有类的父类object。java会允许同名类的继承吗?



12 个回复

倒序浏览
楼主你的object和Object不一样噢~~~
回复 使用道具 举报
首先,java是单继承的,只能继承一个类,其次,同名是可以存在的,但是不同包
回复 使用道具 举报
柴乔军 发表于 2013-1-19 21:02
首先,java是单继承的,只能继承一个类,其次,同名是可以存在的,但是不同包 ...

大写也可以编译和运行,那如果不是同一包相同的名称也可以继承?
回复 使用道具 举报
罗广伟 发表于 2013-1-19 21:29
大写也可以编译和运行,那如果不是同一包相同的名称也可以继承?

类与类的继承只能继承一个,例如在java web开发中应用的框架中经常会有重名的类,但是因为它们不同包,所以可以允许重名的存在,至于你继承的是哪一个,在文件开头不是定义了import来导入嘛
回复 使用道具 举报
我不会告诉你2楼是正解..我会告诉你么?  这里算是重写了Object的方法, 如果说..你有继承这个包下的Object类,, 你可以继承后 调用看看, 会打印出 System.out.println("object构造函数运行");
然后 java是可以继承同名类, 但主要是看包啊... 他们的包不同啊.. 你每次导包的时候可以看下 上面的import 包是不同的
回复 使用道具 举报
Object这个是关键字不能作为名字的......放弃吧.
回复 使用道具 举报
黄金龙 发表于 2013-1-19 21:41
Object这个是关键字不能作为名字的......放弃吧.

可以做。。。。自己定义一个Object不会报错
回复 使用道具 举报
柴乔军 发表于 2013-1-19 21:33
类与类的继承只能继承一个,例如在java web开发中应用的框架中经常会有重名的类,但是因为它们不同包,所 ...

哦,多谢
回复 使用道具 举报
张云杰 发表于 2013-1-19 21:40
我不会告诉你2楼是正解..我会告诉你么?  这里算是重写了Object的方法, 如果说..你有继承这个包下的Object类 ...

哦,多谢
回复 使用道具 举报
本帖最后由 焦健 于 2013-1-19 21:56 编辑

可以运行,经过实验证明你写的Object类继承了java原有的Object类。
D:\12.jpg

12.jpg (46.11 KB, 下载次数: 165)

12.jpg
回复 使用道具 举报
不管什么类,都会自动继承Object这个根父类,,,
不同包同名类是允许存在的,可以继承,不过这样写比较乱,一般情况都要尽量避免。

假如一个类A可以继承另一个类B,但是类B也可以去继承类C,类C可以继承类D。
回复 使用道具 举报
Object 类是基类,它是众多类的顶尖,都是鼻祖了,还去继承啥呢,只有别类继承它的份,
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马