Board logo

标题: 定义了返回值的方法怎么直接结束的问题!求解 [打印本页]

作者: 529467642    时间: 2010-10-21 11:09     标题: 定义了返回值的方法怎么直接结束的问题!求解

在学习类和方法的过程中遇到的:
/* 允许TrafficAdmin得到另一辆车的运行状态,注意这里的返回值类型是CarStatus而不是一个简单数据类型 */
        public CarStatus getAnotherCarStatus(Car anotherCar) {
                if (!isTrafficAdmin) { // 如果当前的车不是TrafficAdmin,则打印出错信息并结束本方法                        anotherCar.speed = 0;
                }
                // 根据另一辆车的speed和direction创建一个CarStatus对象并返回
                CarStatus status = new CarStatus(anotherCar.speed, anotherCar.direction);
                return status;
        }
这里如何结束??如果直接return返回的类型和方法里定义的返回值类型不符。如果不return该如何结束方法??
作者: deepnighttwo    时间: 2010-10-22 09:43

如果一个方法定义了返回值,那么就必须返回一个指定类型的值。在这里,getAnotherCarStatus方法就必须返回一个CarStatus类型的引用的值。否则就是语法错误。

当然,在本例中,如果方法在某些情况下确实无法计算出一个合适的值作为返回值,可以返回null,null就代表什么值都没有。




欢迎光临 万卷图书 (http://wanjuanchina.net/) Powered by Discuz! 7.0.0