Table of Contents

    Understanding Java Tokens: Definitions and Examples

    Java program is basically a collection of classes. But it have a basic building blocks, these basic buildings blocks in Java language which are constructed together to write a java program. This basic building blocks are called Token.

    Each and every smallest individual units in a Java program are known as C tokens

    Simply we can say that java program is also collection of tokens, comments and whitespaces.

    In Java Programming tokens are of six types. They are

    Types of Token
    No Token Type Example 1 Example 2
    1 Keyword int for
    2 Constants height sum
    3 Identifier -443 43
    4 String "Hello" "atnyla"
    5 Special Symbol * @
    6 Operators * ++
    Token Meaning
    Keyword A variable is a meaningful name of data storage location in computer memory. When using a variable you refer to memory address of computer
    Constant Constants are expressions with a fixed value
    Identifier The term identifier is usually used for variable names
    String Sequence of characters
    Special Symbol Symbols other than the Alphabets and Digits and white-spaces
    Operators A symbol that represents a specific mathematical or non-mathematical action

    Keyword

    Keywords are an special part of a language definition. Keywords are predefined, reserved words used in programming that have special meanings to the compiler. These meaning of the keywords has already been described to the java compiler. These meaning cannot be changed. Thus, the keywords cannot be used as variable names because that would try to change the existing meaning of the keyword, which is not allowed. Keywords are part of the syntax and they cannot be used as an identifier. But one can change these words as identifiers by changing one or more letters to upper case, How ever this will be a bad practice so we should avoid that.

    Java language has reserved 50 words as keywords

    All the Keywords are written in lower-case letters. Since java is case-sensitive

    int distance ;
    int roll_mo ;
    float area ;

    Here, int, float are a keyword that indicates 'distance', 'roll_no', 'area' are a variable of type integer.

    Java Language Keywords

    Here is a list of keywords in the Java programming language. You cannot use any of the following as identifiers in your programs. The keywords const and goto are reserved, even though they are not currently used. truefalse, and null might seem like keywords, but they are actually literals; you cannot use them as identifiers in your programs.

    abstract continue for new switch
    assert*** default goto* package synchronized
    boolean do if private this
    break double implements protected throw
    byte else import public throws
    case enum**** instanceof return transient
    catch extends int short try
    char final interface static void
    class finally long strictfp** volatile
    const* float native super while
    *   not used
    **   added in 1.2
    ***   added in 1.4
    ****   added in 5.0

     Learn More about Keywords

    Identifiers

    Identifiers are the names of variables, methods, classes, packages and interfaces

    Identifier must follow some rules. Here are the rules:

    • All identifiers must start with either a letter( a to z or A to Z ) or currency character($) or an underscore.
    • They must not begin with a digit
    • After the first character, an identifier can have any combination of characters.
    • A Java keywords cannot be used as an identifier.
    • Identifiers in Java are case sensitive, foo and Foo are two different identifiers.
    • They can be any length

    Each variable has a name by which it is identified in the program. It's a good idea to give your variables mnemonic names that are closely related to the values they hold. Variable names can include any alphabetic character or digit and the underscore _. The main restriction on the names you can give your variables is that they cannot contain any white space. You cannot begin a variable name with a number. It is important to note that as in C but not as in Fortran or Basic, all variable names are case-sensitive. MyVariable is not the same as myVariable. There is no limit to the length of a Java variable name. The following are legal variable names:

    • MyVariable
    • myvariable
    • MYVARIABLE
    • x
    • i
    • _myvariable
    • $myvariable
    • _9pins
    • andros
    • ??????
    • OReilly
    • 
      This_is_an_insanely_long_variable_name_that_just_keeps_going_and_going_and_going_and_well_you_get_the_idea_The_line_breaks_arent_really_part_of_the_variable_name_Its_just_that_this_variable_name_is_so_ridiculously_long_that_it_won't_fit_on_the_page_I_cant_imagine_why_you_would_need_such_a_long_variable_name_but_if_you_do_you_can_have_it

    The following are not legal variable names:

    • My Variable // Contains a space
    • 9pins // Begins with a digit
    • a+c // The plus sign is not an alphanumeric character
    • testing1-2-3 // The hyphen is not an alphanumeric character
    • O'Reilly // Apostrophe is not an alphanumeric character
    • OReilly_&_Associates // ampersand is not an alphanumeric character

    If you want to begin a variable name with a digit, prefix the name you'd like to have (e.g. 8number) with an underscore, e.g. _8number. You can also use the underscore to act like a space in long variable names.

    classes and interfaces start with a leading uppercase, the second and subsequent words are marked with a leading uppercase letters.

    Examples:
    Employee
    Area
    Animal
    MotorCycle
    FurnitureLength
    etc.

    public methods and instance variables starts with a leading lowercase letters.

    Examples:
    suma
    area
    addition
    multiplication
    etc.

    When more than one words are in a name, the scond and subsequent words are marked with a leading uppercase letters.

    Examples:
    areaCircle
    buisnessName
    averageResult
    etc.

    Private and local variables use only lowercase combined with underscore.

    Examples:
    volume
    area_circle
    distance_moon
    etc.

    Variables that represents constant values use all uppercse letters and underscore between words

    Examples:
    TOTAL_MARKS
    GROSS_SALARY
    PI_VALUE
    etc.

    These are not rules but these are conventions.

    Constants or Literals

    Literals in java are sequence of characters (digits, letters and other characters) that represent constant values to be stored in variables. Java language specifies five major type of literals. They are below :

    Constant or Literals in java
    Constant Type of Value Stored
    Integer Literals Literals which stores integer value
    Floating Literals Literals which stores float value
    Character Literals  Literals which stores character value
    String Literals Literals which stores string value
    Boolean Literals Literals which stores true or false

     Learn More about literals or Constant

    String

    In C and C++, strings are nothing but an array of characters ended with a null character (‘\0’).This null character indicates the end of the string. Strings are always enclosed in double quotes. Whereas, a character is enclosed in single quotes in C and C++.Declarations for String:

    • char string[20] = {‘g’, ’e’, ‘e’, ‘k’, ‘s’, ‘f’, ‘o’, ‘r’, ‘g’, ’e’, ‘e’, ‘k’, ‘s’, ‘\0’};
    • char string[20] = "atnyla";
    • char string [] = "atnyla";

    In java, string is basically an object that represents sequence of char values. An array of characters works same as java string. For example:

     
    1. char[] ch={'a','t','n','y','l','a'};  
    2. String s=new String(ch);  

    is same as:

     
    1. String s="atnyla";  

    Java String class provides a lot of methods to perform operations on string such as compare(), concat(), equals(), split(), length(), replace(), compareTo(), intern(), substring() etc.


     Learn More about Strings

    Special symbol

    The following special symbols are used in C having some special meaning and thus, cannot be used for some other purpose.[] () {}, ; * = #

    , < > . _
    ( ) ; $ :
    % [ ] # ?
    ' & { } "
    ^ ! * / |
    - \ ~ +  
    • Brackets[]: Opening and closing brackets are used as array element reference. These indicate single and multidimensional subscripts.
    • Parentheses(): These special symbols are used to indicate function calls and function parameters.
    • Braces{}: These opening and ending curly braces mark the start and end of a block of code containing more than one executable statement.
    • semicolon (; ): It is used to separate more than one statements like in for loop is separates initialization, condition, and increment.
    • comma (,): It is an operator that essentially invokes something called an initialization list.
    • an asterisk (*): It is used for mutiplication.
    • assignment operator (=): It is used to assign values.
    • preprocessor(#): The preprocessor is a macro processor that is used automatically by the compiler to transform your program before actual compilation.
     Learn More about Special symbol

    Operators

    An operator is a symbol that takes one or more arguments and operates on them to produce a result. Operators are of many types and are considered in operator chapter

     

    There are many types of operators in java which are given below:

    • Unary Operator,
    • Arithmetic Operator,
    • shift Operator,
    • Relational Operator,
    • Bitwise Operator,
    • Logical Operator,
    • Ternary Operator and
    • Assignment Operator.
      Learn More about Operators


    Java Tokens example program