Erro

Por gentileza alguem sabe pq o codigo abaixo gera um erro em tempo de compilacao??

enum Caffe{L,S,D{};
  int y=10;
 
 };
public class Nibiru{ 
  static int x(){
      Caffe ty.y=90;//?? oq eu ha de errado? ele compila so se fazer ty.y=nulle depois fazer atribuicao ty.y=90;
  
     return ty.y;
  }
    
  public static void main(String[] args) {
 Caffe e=null;
 x();
   System.out.printf("Valor %d\n ",  e.y);
}
}

Me parece que essa sintaxe não e valida. Ao declarar ty, o compilador esta esperando algo que poda ser convertido a Caffe. No caso, int (90) não pode ser convertido e gera o erro.

Acho que nao cara pois ao declarar
Caffe ty.y=90;tenho uma variavel local,inclusive nao entendi pq
se eu fizer

Caffe ty.y=null;
ty.y=90;

da certo,realmente fiquei atorduado agora!!