DataComponentGetter.java

net.minecraft.core.component.DataComponentGetter

信息

  • 全限定名:net.minecraft.core.component.DataComponentGetter
  • 类型:public interface
  • 包:net.minecraft.core.component
  • 源码路径:src/main/java/net/minecraft/core/component/DataComponentGetter.java
  • 起始行号:L5
  • 职责:

    TODO

字段/常量

内部类/嵌套类型

构造器

方法

下面的方法块按源码顺序生成。

<T> T get(DataComponentType<?extends T> type) @ L6

  • 方法名:get
  • 源码定位:L6
  • 返回类型: T
  • 修饰符:package-private

参数:

  • type: DataComponentType<?extends T>

说明:

TODO

default <T> T getOrDefault(DataComponentType<?extends T> type, T defaultValue) @ L8

  • 方法名:getOrDefault
  • 源码定位:L8
  • 返回类型: T
  • 修饰符:default

参数:

  • type: DataComponentType<?extends T>
  • defaultValue: T

说明:

TODO

default <T> TypedDataComponent<T> getTyped(DataComponentType<T> type) @ L13

  • 方法名:getTyped
  • 源码定位:L13
  • 返回类型: TypedDataComponent
  • 修饰符:default

参数:

  • type: DataComponentType

说明:

TODO

代码

public interface DataComponentGetter {
    <T> @Nullable T get(DataComponentType<? extends T> type);
 
    default <T> T getOrDefault(DataComponentType<? extends T> type, T defaultValue) {
        T value = this.get(type);
        return value != null ? value : defaultValue;
    }
 
    default <T> @Nullable TypedDataComponent<T> getTyped(DataComponentType<T> type) {
        T value = this.get(type);
        return value != null ? new TypedDataComponent<>(type, value) : null;
    }
}

引用的其他类