difference between .login, .tcshrc ,.profile

Could you please explain me what is the difference between .login, .tcshrc ,.profile file . Can I keep .tcshrc file in two different location .Actually my problem is I have one server in which another server is mounted so I have two programs which refers to two different versions of java and I need to define it in env variable called JAVA_HOME so where should , I do .

it would help if you provided the shell your account is defined to use. what does the following return?

echo $SHELL

ksh, sh, typically use .profile
csh, tcsh, typically use .login & .tcshrc