关于java类和继承,接口的问题。。

不同类写在不同文件中,和写在同一文件中有什么区别?所谓包级私有怎么理解,具体怎么做可以实现,共有类和普通类,在使用自己定义的对象,函数上和父类子类还有接口上的区别是什么?望大神解答。

第1个回答  2013-05-31
不同类写在不同文件中,和写在同一文件中有什么区别?
最大区别是生成的文件名不同。如果在一个文件内、并且是私有的,访问的级别不同。

包级私有,就是同一包内允许访问。追问

就是这个访问级别。。能不能给分析下。。还有平时用myelipse写的时候完全没注意到包的问题。。怎么样就不是在一个包里了?

第2个回答  2013-05-31
一个是可读性,还有一个是写在一个文件中的类,只能有一个是公共类,这个公共类必须和文件名一致。追问

这个我知道,想知道的是如何实现一个包内,如何不在一个包内。。求教。。

追答

类的私有制没怎么用过 ,我只知道private属性,然后用public的set,get方法,在其他类取得值。
给我个QQ互相学习

追问

好的好的,707744957

第3个回答  2013-05-31
不是大神的回答,呵呵
不同类写在不同文件中,和写在同一文件中有什么区别?
--> 这个问题对小项目没有说明区别,但是如果你再一个文件中写了很多类,你时间长了就会忘记在什么地方,其他人看你的代码也很痛苦,建议一个类一个文件

下面的问题书上都有的
所谓包级私有怎么理解,具体怎么做可以实现,共有类和普通类,在使用自己定义的对象,函数上和父类子类还有接口上的区别是什么?
多看书吧追问

额,看书有点混。。能不能给分析下~_~

第4个回答  2013-05-31
关于同包,同类其实只是修饰符的访问问题,你可以参照
http://www.blogjava.net/hwpok/archive/2011/09/03/357926.html
父类跟子类的问题可以用个简单的例子来说明
class animal{
void shout(){}
protected final String type="Animal";
public static void main(String[] args)
{
animal a = new dog();
a.shout();
a= new cat();
a.shout();
}
}
class dog extends animal {
void shout(){
System.out.println("wang wang!I am "+type);
}
}
class cat extends animal {
void shout(){
System.out.println("miao miao!I am "+type);
}
}
方法可以实现不同的功能,但是他们确实继承于同一类
面向对象用的比较多,要好好理解。追问

额,这个回去得好好瞧瞧。。爪机无力。。那个我现在有点不明白一个类如果不继承,也可以在另一个类中创建这个类的对象是吧?那继承是为了使用原有的一个类扩展另一个类的方法对象?那可以理解为,实际上可以不用继承,只不过程序会出现很多多余的重复部分,而且联系性比较差?

追答

继不继承跟在另外一个类创建这一个类没关系,跟修饰符有关系。

继承也没有你想得那么简单,你可以去看看多态的内容,里面很详细,我刚才只是举了一个简单的例子,就是说类型是一样的,调用的方法不同,就像a,从头到尾都是animal的类型,但是调用出来的方法确实不一样的。
这个不仅仅是省略了多余的部分,更多的是一种设计思想,在运行环境中,有时候根本不知道方法调用的是哪个。。
比如
public animal getAnimal(int i)
{
if(i==0){return new dog();}
else {return new cat();}
}
我这个只是随便写的,我想说的是可以根据需要来产生对象,而这个对象就是animal的子类,如果是其他类(非继承类)就错了。。

追问

哦哦,我好好翻翻书去。。不明白再来追问(☆_☆)

本回答被提问者和网友采纳
第5个回答  2013-05-31
不同类写在不同文件中,和写在同一文件中有什么区别--- 没什么区别 文件只不过是区分当前类是做什么用的 让别人能看懂追问

额,怎么样才算是在一个包里?怎么样就不是了?平时我都用myelipse直接分别创建的。。一直没在意。。突然发现根本不知道怎么回事的说。。

java继承和接口的2个问题
第一题 A 错。java中的类没有多继承的概念,不可能有多个直接父类。只有接口才支持多继承。B 对。C 对。D 对。所以答案选A。第二题 A 错。接口中只有抽象方法,不可能有普通方法。B 错。接口中的成员变量默认的都是静态常量(static final)。所以不可以修改。C对。接口可以继承接口,而且一个...

继承和接口的实现的区别
1、java类可以一次继承多个接口,用implements 接口1,接口2;2如果是接口继承接口的话也可以用extends,接口是多继承的,java类才是单继承;3接口继承接口可以不实现父接口中的方法,可以声明自己的新方法;4类实现接口时,一定要实现接口中声明的方法,如果接口中没有定义抽象方法则不需要,但是要注意,...

Java中继承和接口的区别
1,一个类只能继承一个类,但是可以实现多个接口。2,依赖倒转原则: 依赖抽象(例如接口),不要依赖于实现。3,合成\/聚合复用原则(CARP): 尽量使用合成\/聚合,而不是继承关系达到复用的目的。4,接口传达的意思是:拥有某种功能,能干嘛,比如:Serializable代表可序列化的。5,继承传达的是意思是:...

java继承抽象类和接口问题
1.抽象类,不能实例化,也就是不能new,也就是不能创始对象。你可以这么理解:抽象,就是模糊的概念,相当于人们说的经常说的概念车之类的,为什么叫概念车,是因为只有个大概的模型,很多技术(在java里我们称之为方法)没有实现,所以不能造出车子(java中我们就是不能new啦)。当然只有解决所以技...

请问java中继承和接口有什么区别?将仔细点,菜鸟。。谢谢了
继承是extended命令,一个类只能继承一个父类,class A extended B,C这种是错误的。继承后,子类可以使用父类的方法。接口是implements命令,一个类可以有很多接口,class A implements B,C,D是可以的。定义了接口之后,子类需要覆写掉接口中的方法,因为接口方法是没有具体实现的。

java接口可以继承类吗?怎么回事说一下谢谢~~概念有点模糊~
java 接口不能继承类。接口之间允许存在继承关系,一个接口可以继承多个接口。类可以实现接口,通过 implements 关键字。接口不能实现接口。。。希望可以帮到你哈

java中一个接口可以继承几个接口吗
在Java编程中,接口的继承特性不同于类的继承。一个接口可以实现多继承,即一个接口可以声明为其他多个接口的扩展,例如:"interfaceCextendsA,B{}",表明接口C继承了接口A和B的功能。类则遵循单一继承原则,即一个类只能直接继承一个类,如:"classBextendsA{}"。但类可以在继承类的同时,实现多个...

Java中一个类最多可以继承?
java中定义一个类可以同时继承两个类java不支持多重继承,也就是不能同时继承两个类,但可以实现多个接口。不能。\\x0d\\x0a一个类不能直接继承多个类,java是单继承语言。\\x0d\\x0a比如说这样:classAextendsB,C不能这样写,因为java不支持多继承。java中对于继承,java只支持单继承。java虽然不...

Java中继承和接口的区别
理论上:类只能单继承,接口可以多继承(接口应该叫实现);实践上:我们说类的继承一般继承的是事物的属性,如:姓名,年龄,性别 等,而接口的继承(或者说实现)一般是继承事物的行为,如:行走,飞翔,游泳(这比较抽象,在一般项目中大部分是指对某事物的增删改查等操作)总之,单继承描述了“...

JAVA抽象类、接口继承的疑惑
c类继承接口a,他可以获得a里面所有的抽象方法,常量属性,内部类,枚举等等。d继承b同时实现c,就是吧上面两个情况综合一下,如果b实现a的某方法,那么d中调用的就是b实现的这个,如果b中没实现a的方法,d中也可以访问a的这个方法。所以d可以实现a的方法,也可以有b里的新方法。我说的不太明白,...

相似回答