It took me a while to find the information, that the search already shall do a AND like mentioned here.
[java] "generics" null and it feels like OR. Why doesn't it work without
" at generics by the way (side question)?
I have a feeling the search is looking for similar words, as it is highlighting the word generally which I assume the search engine thinks is close to the word generics. Adding quotes around generics tells the search to look for that exact word, not to test against similar words which is why you're getting different results there.
It definitely is doing an AND, it's just when you leave the quotes out it's not ANDing on the word "generics".
As stated by comments and the other answer it really is AND. The real answer I found now is this search:
[java] "generics" "null"
I don't know why I didn't try that yesterday.