Package names should always be lowercase.
If domain name contains a java keyword or contains a - or starts with a number start all of them with underscore.Examples are
com.switch.mypackage ---> com._switch.mypackage
1world.com ------------->_1world.com
experts-exchange.com-------------->com.experts_exchange
Class Names -first word is capital ,camelcase and are Nouns.
Examples are LinkedLList, ArrayList,GearBox,Main,Runner
Interface names- should be capital ,camelcase.Examples are Comparable ,WebDriver
MethodNames are often verbs .reflects what the function performs or the results it returns .First letter is small.then camel case which is called mixed case.Examples are getName(), size,addPlayerToList
Constants names are All UPPERCASE,Words seperated by _ and always use final keyword.Examples - static final MAX_INT ,static final short SEVERITY_ERROR ,static final double P1 = 3.14159
Variable names are mixedCase - first letter small and first letter of other words capital.Variable name should be meaningful abd indicative .Dont use underscores.Examples - i , league sydneySwan ,boxLength
Type parameters
E - Element(used extensively by Java collections framework)
2 . K - Key