Abstract Class vs Interface INTERFACE ABSTRACT CLASS Interface can have only abstract methods. Abstract class can have abstract and non-abstract methods. From Java 8, it can have default and static methods also. Variables declared in a Java interface are by default final. An abstract class may contain non-final variables. Interface has only static and final variables. Abstract class can have final, non-final, static and non-static variables. Interface can’t provide the implementation of abstract class. Abstract class can provide the implementation of interface. A Java interface can be implemented using keyword “implements” Abstract class can be extended using keyword “extends”. An interface can extend another Java interface only An abstract class can extend another Java class and implement multiple Java interfaces. Members of a Java interface are public by default. A Java abstract class can have class members like private, Sprotected, etc. Source...
Array vs Linked List ARRAY LINKED LIST Array is a collection of elements of similar data type. Linked List is an ordered collection of elements of same type, which are connected to each other using pointers. Array supports Random Access , which means elements can be accessed directly using their index, like arr[0] for 1st element, arr[6] for 7th element etc. Hence, accessing elements in an array is fast with a constant time complexity of O(1) . Linked List supports Sequential Access , which means to access any element/node in a linked list, we have to sequentially traverse the complete linked list, upto that element. To access nth element of a linked list, time complexity is O(n) . In an array, elements are stored in contiguous memory location or consecutive manner in the memory. In a linked list, new elements can be stored anywhere in the memory. Address of the memory location allocat...
Comments
Post a Comment