你犯了一个概念性的错误:没有弄清返回值的概念。
返回值是一个函数执行完毕之后给主程序返回的内容,用return关键字。void是空函数的意思,没有返回值,所以没有return语句。
而你代码中体现的是显示器显示的内容,都是函数内部的,跟函数类型无关。因为你定义的是整形数据int
,所以n1,n2必须是整形,当然就不能有小数点了。
如果你定义是这样的
float
n1,n2;
就可以有小数点了
void除了说明该方法没有返回值外,还有什么作用呢?构造方法同样也是没有返回值的,那它和void方法有什么区别呢?构造方法与方法又有什么区别?用具象的实物来表现的话三者有何种关系呢?
id 除了说明该方法没有返回值以外,并没有其它的作用。
构造方法应该来说是一个特殊的方法,但是其实可以理解为构造方法是有返回值的。
Person p = new Person();
我们在使用 new Person() 时,这个构造函数被执行了,而返回值,就是新的对象。
回复楼主的两个问题:
为什么要用void来规定方法没有返回值呢?用具体的例子怎么样来说明呢?求具象化的解答。
构造方法与方法的区别是什么呢?感觉初学对这个很困惑。
我用一个类的代码来回答你的这两个问题
class Person{ public string name; //构造函数A: 这是一个空构造函数
public Person(){
} //构造函数B: 这是带参构造函数
public Person(String name){ thisname = name;
} public void Run(){
} pulbic String Speak(){ return "说话的内容";
}
}
Person tom = new Person();
tomname = "tom";//让tom跑tomRun;
Person jimy = new Person("jimy");
String song = jimySpeak();
我们在使用 new Person() 时,会调用构造函数A,而使用 new Person("jimy")时,会调用构造函数B
构造函数只有在实例化一个类时才会被调用,在类实例化完成后,构造函数无法再被调用。
Person 这个类,有两个方法, Run 和 Speak ,在现实生活中,跑步我们不需要返回什么,只需要这个对象去执行这个动作就可以了。而 Speak 这个,需要有一些回馈,比如说话的内容等等。
方法在类被实例化后,可以随时调用(只要可以调用得到)。
建议初学者的话,认识系统的看一两本书,《JAVA编程思想》是一定要看完的。
方法其实你可以理解为将一段代码封装起来。当你调用它的时候 你可以不需要知道它里面写的代码是什么意思,你只需要知道 给他一个值,运算之后它会返回给你一个你要的值就行了。
无返回值的也有自己的用处,例如你将一段查询代码 写在一个方法里面,需要的地方调用这个方法就行了,不需要它返回任何东西。这样可以减少代码的冗余。不然你这段代码 N个地方要用你就得写N次。
因为你现在的代码比较简单所以体现不出来,当你以后有几百行甚至上千行代码只是为了实现一个功能,但是这个功能很多地方要用的时候,你就明白方法的好处了。有的功能需要处理之后告诉自己 处理的结果。有些不需要知道结果,只要运行这段代码就行了。
编程语言是编译器来读的,虽然很多时候编程语言语法说什么什么,但编译器并没有严格按语法来做。
void在函数名前表示函数无返回值,这个没问题,但编译器并没有做任何事情,这些需要程序员自己控制,但编译器会报警告提示你。
为什么还能接收到void函数的返回值,是因为函数的返回值是在一个寄存器中,调用函数直接取寄存器的值作为被调用函数的返回值,而不管这个值是不是被调用函数写入到这个寄存器作为返回值的,也有可能是上一次某个函数写入的。
以上就是关于void类型的函数,其返回值能是小数么全部的内容,包括:void类型的函数,其返回值能是小数么、java中void的用法、void类型没有返回值。。是什么意思等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)