File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Variables inside Interface

 
Thillai Sakthi
Ranch Hand
Posts: 103
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I understand that all variables (i.e. data members) inside an interface are final and static. Going by this logic, the following program should throw an error, but works perfectly! Kindly clarify why?
interface inter1
{
int i=10;//i is final?
void dis();
}
interface inter2
{
int i=20; /* Reinitializing i again here. Compiler is expected to throw an error.*/
}
class face implements inter2,inter1
{
public void dis()
{
System.out.println("Interface 1 is called");
}
public static void main(String ar[])
{
face ob=new face();
ob.dis();
System.out.println(inter1.i);
System.out.println(inter2.i);
}
}


------------------
 
Brent Worden
Ranch Hand
Posts: 50
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I would guess the compiler is making the same assumption about interface variables you're making: they're all static and final. Hence, there's no need to include those modifiers. The same thing occurs with interface method scope: they're always public.

------------------
Brent Worden
http://www.Brent.Worden.org/
 
I agree. Here's the link: http://aspose.com/file-tools
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic