以类名作为类型的方法

时间:2016-02-07 23:29:49

标签: java methods

为什么我要创建一个类型为classname而不是原始类型的方法,如void,int ...?

using UnityEngine;
using UnityStandardAssets.ImageEffects;

public class GS_GlobalFog : GS_SliderBase {

protected override void GraphicsPresetLow() {
    SetFog(false);
}

protected override void GraphicsPresetMedium() {
    SetFog(true);
}

protected override void GraphicsPresetHigh() {
    SetFog(true);
}

protected override void GraphicsPresetUltra() {
    SetFog(true);
}

protected override void OnSliderValueChange() {
    SetFog(System.Convert.ToBoolean(Value));
}

void SetFog(bool value) {
    cam.GetComponent<GlobalFog>().enabled = value;

    slider.value = System.Convert.ToInt16(value);
  }
}

为什么BufferedImage类型不是空的或类似的东西?我知道这是一个愚蠢的问题,但我希望有人可以提供帮助。

2 个答案:

答案 0 :(得分:1)

此处,BufferedImage是返回的数据类型。它可以是任何其他类类型,例如String或基本类型,例如int

// This method returns a String
String method() {
    return "";
}

// This method returns an int
int method() {
    return 0;
}

如果您不需要返回某个值,只需要执行某些内容,就可以使用void

// This method doesn't return anything
void method() {
    ...
}

答案 1 :(得分:0)

它被称为返回类型,它允许该方法向调用者返回一些内容。在这种情况下,BufferedImage(始终为null)。但是你可以返回一个有效的BufferedImage,从而解除了从调用者那里提供缓冲图像的逻辑。