想研究java核心代码的实现问题,遇到以下问题。
源码中初始化代码:
public Color(int r, int g, int b, int a) {
value = ((a & 0xFF) << 24) |
((r & 0xFF) << 16) |
((g & 0xFF) << 8) |
((b & 0xFF) << 0);
testColorValueRange(r,g,b,a);
}
testColorValueRange(r,g,b,a) 是处理异常的,也就是说初始化color类只是修改value变量的int值。
然后再查看变量value的定义:
int value;
只是声明了变量,什么都没操作。而color类仅有接口没有父类,接口中也没任何功能性代码。
那么color类是如何与更低层代码对接实现颜色更改呢(实现)?