Nope.
See the result:
SQL> L
1 select student_id from (
2 select distinct student_id,
3 count(*) over (partition by student_id) courses
4 from my_table
5 where course in ('java','c'))
6* where courses = 2
SQL> /

STUDENT_ID
----------
13
15


Tamil