首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

一个关于类的有关问题 小弟迷茫了好久 答案

2012-01-12 
一个关于类的问题 小弟迷茫了好久 在线等答案class A{}Class B{A a(){}}比如上面这个情况 为什么A a()这

一个关于类的问题 小弟迷茫了好久 在线等答案
class A{
}
Class B{
A a(){};
}
比如上面这个情况 为什么A a()这个方法要用A而不是void 之类的呢?
有什么特殊的意思呢?
哪个能详细的给解释下啊 
小弟感激不尽 
初学java问题很多。。。。。

[解决办法]

Java code
class A{ //类A} Class B{ A a(){}; //类B中方法a(),返回值为A类类型的,其实A a(){}  <==>   void a(){}    <==>  int a(){}          //int 是基本数据类型,A看作复杂的类型就是了
[解决办法]
class A{
//类A
}

class B{
//类B
A a(){
//类B之中的a方法,返回的是一个A类型的对象
}
}

eg:
class PigHead{
}

class Pig{
PigHead head = new PigHead();

public PigHead getHead(){
return head;

}
[解决办法]
A a(){}

a()是一个函数,函数有返回值

如果用void则表示这个函数没有返回值

而用A则表示这个函数会返回一个类型为A的值。

建议多看看书吧,这个是最基础的
[解决办法]
class A{ 
//类A 


class B{ 
//类B 
A a(){ 
//类B之中的a方法,返回的是一个A类型的对象 


以上a()方法的返回值类型是A,正如int a()方法的返回值类型是整型int,一样道理
[解决办法]
类也可以做为数据类型,是一个复杂数据类型~~~
[解决办法]
1楼的回答是最正确的, 被他抢先了, 哎!~

[解决办法]
Java code
如一楼所说的A是一种数据类型,返回的可以是一个A 还可以是一个接口,一般程序设计的时候接口要比类使用得多,列如:package alltest;interface ATest{    public void m1();    public void m2();}class BTest implements ATest{    public void m1() {    }    public void m2() {    }        public ATest returnType(){        return new BTest();    }    }class CTest implements ATest{    public void m1() {    }    public void m2() {    }        public ATest returnType(){        return new CTest();    }    }public class InterfaceTest {    public void show(ATest a){        System.out.println(a.getClass());    }    public static void main(String[] args) {        InterfaceTest t = new InterfaceTest();                t.show(new BTest().returnType());        t.show(new CTest().returnType());    }}OutPut:class alltest.BTestclass alltest.CTest 

热点排行