Schnelle lernen Java für Anfänger

1- Introduction

Zum ersten möchten Sie wissen, was brauchen Sie, die Java zu lernen. Schauen Sie an bei ...

2- Neues Projekt erstellen

Zum ersten erstellen wir ein Projekt. Es wird in dieser Hinweise benutzen
Name von Projekt eingeben
  • BasicJavaTutorial
Das ist Image von dem erstellten Project 
Beachten Sie: Um die sonstige Sprache außer Englisch in Projekt zu typen, sollen Sie die Verschlüsselung zu UTF8 ändern.
Drücken Sie die Rechte Maustaste ein und wählen Sie Properties:

3- Primitive Datentypen (Primitive Data Types)

Es gibt 8 primitive daten in JAVA:
  • Für die ganze Zahl haben wir :   byte, short, int, long
  • Für die reelle Zahl haben wir : float, double
  • Für Zeichen: char
  • Für logic Type :  true oder false ( richtig oder falsch)
Type Description bit Min value Max value
byte Số tự nhiên 8 bit 8  -128 (-2^7) 127 (2^7-1)
short Số tự nhiên 16 bit 16 -32,768 (-2^15) 32,767 (2^15 -1)
int Số tự nhiên 32 bit 32 - 2,147,483,648
(-2^31)
2,147,483,647
(2^31 -1)
long Số tự nhiên 64 bit 64 -9,223,372,036,854,775,808
(-2^63)
9,223,372,036,854,775,807
(2^63 -1)
float Số thực 32 bit 32 -3.4028235 x 10^38 3.4028235 x 10^38
double Số thực 64 bit 64 -1.7976931348623157 x 10^308 1.7976931348623157 x 10^308
boolean Kiểu logic   false true
char Kiểu ký tự 16 '\u0000' (0) '\uffff' (65,535).

4- Variable

Drücken Sie die rechte Maustaste in src ein und dann wählen Sie "New/Package":
Stellen Sie den Name von package :
  • org.o7planning.tutorial.javabasic.variable
Den Name von Class eingeben:
  • VariableExample1
Class VariableExample1 wird erstellt
Ändern Sie die Code der class VariableExample1:
VariableExample1.java
package org.o7planning.tutorial.javabasic.variable;

public class VariableExample1 {

    public static void main(String[] args) {

        // Declare a variable of type int (integer 32-bit)
        int firstNumber;

        // Assigning values to firstNumber
        firstNumber = 10;

        System.out.println("First Number =" + firstNumber);

        // Declare a 32-bit real number (float)
        // This number is assigned a value of 10.2
        float secondNumber = 10.2f;

        System.out.println("Second Number =" + secondNumber);

        // Declare a 64-bit real numbers
        // This number is assigned a value of 10.2
        // character d at the end to tell with Java this is the type double.
        // Distinguished from a float.
        double thirdNumber = 10.2d;

        System.out.println("Third Number =" + thirdNumber);

        // Declare a character
        char ch = 'a';

        System.out.println("Char ch= " + ch);

    }

}
Starten Sie class VariableExample1:
Drücken Sie die Maustaste ins class VariableExample1 ein und dann wählen Sie "Run As/Java Application":
Das Ergebnis des Class Laufen in Console Fenster 
Sie können viele Variable gleichzeitig melden. Das unten Beispiel stellt diese Dinge dar.
Erstellung der class VariableExample2
VariableExample2.java
package org.o7planning.tutorial.javabasic.variable;

public class VariableExample2 {

    public static void main(String[] args) {

        // Declare three 64-bit integer (long)
        long firstNumber, secondNumber, thirdNumber;

        // Assign value to firstNumber
        // L at the end to tell java a long type, distinguished from type int.
        firstNumber = 100L;

        // Assign values to secondNumber
        secondNumber = 200L;

        // Assign values to thirdNumber
        thirdNumber = firstNumber + secondNumber;

        System.out.println("First Number = " + firstNumber);
        System.out.println("Second Number = " + secondNumber);
        System.out.println("Third Number = " + thirdNumber);
    }

}
Das Ergebniss für dem Starten der Class   VariableExample2:

5- Kontrollfluss (Control flow)

5.1- If-else Anweisung (statement)

Die Struktur der Anweisung if - else ist:
if(condition1 true)  {
 // Do something here
}else if(condition2 true) {
 // Do something here
}else if(condition3 true) {
 // Do something here
}else  { // Other
 // Do something here
}
Tạo class ElseIfExample1:
ElseIfExample1.java
package org.o7planning.tutorial.javabasic.controlflow;

public class ElseIfExample1 {

    public static void main(String[] args) {
        
        // Declaring a integer number (int)        
        int score = 20;

        System.out.println("Your score =" + score);

        // If the score is less than 50
        if (score < 50) {
            System.out.println("You are not pass");
        }

        // Else if the score more than or equal to 50 and less than 80.
        else if (score >= 50 && score < 80) {
            System.out.println("You are pass");
        }

        // Remaining cases (that is greater than or equal to 80)
        else {
            System.out.println("You are pass, good student!");
        }

    }
}
Ergebnis von dem Starten der class ElseIfExample1:
Ändern Sie den Wert der Variable "score" in dem obengenannten Beispiel und Restarten Sie die Class ElseIfExample1:
int score = 20;

5.2- Der normale Operator

  • > größer
  • < kleiner
  • >= größer oder gleich
  • <= kleiner oder gleich
  • && und
  • || oder
  • == gleiche Vergleich
  • != unterschiedliche Vergleich
  • ! negativ
Erstellung der class ElseIfExample2
ElseIfExample2.java
package org.o7planning.tutorial.javabasic.controlflow;

public class ElseIfExample2 {

    public static void main(String[] args) {

        // Declare a variable int simulate your age.
        int age = 20;

        // Test age less than or equal 17
        if (age <= 17) {
            System.out.println("You are 17 or younger");
        }

        // Test age equals 18
        else if (age == 18) {
            System.out.println("You are 18 year old");
        }

        // Test age, greater than 18 and less than 40
        else if (age > 18 && age < 40) {
            System.out.println("You are between 19 and 39");
        }

        // Remaining cases (Greater than or equal to 40)
        else {
            // Nested if statements
            // Test age not equals 50.
            if (age != 50) {
                System.out.println("You are not 50 year old");
            }

            // Negative statements
            if (!(age == 50)) {
                System.out.println("You are not 50 year old");
            }

            // If age is 60 or 70
            if (age == 60 || age == 70) {
                System.out.println("You are 60 or 70 year old");
            }

        }

    }
}
Sie können den Wert der "age" ändern und starten Sie class ElseIfExample2 und dann sehen die Ergebnisse

5.3- Boolean

boolean ist ein Datenart. Es hat nur 2 Werte   true oder  false (richtig oder falsch).
Erstellen Sie class BooleanExample:
BooleanExample.java
package org.o7planning.tutorial.javabasic.controlflow;

public class BooleanExample {

    public static void main(String[] args) {

        // Declare a variable of type boolean
        boolean value = true;

        // If value is true
        if (value == true) {
            System.out.println("It's true");
        }
        // Else
        else {
            System.out.println("It's false");
        }

        // With boolean values you can also write
        if (value) {
            System.out.println("It's true");
        }
        // Else
        else {
            System.out.println("It's false");
        }
    }
}

5.4- Switch-case-default Anweisung

Das ist ein Anweisung mit Zweig, es ist so gleich wie die obengemeinten Anweisung If-Else 
switch ( variable_to_test ) {
  case value:
   // code_here;
   break;
  case value:
   // code_here;
   break;
  default:
   // values_not_caught_above;
}
SwitchExample1.java
package org.o7planning.tutorial.javabasic.controlflow;

public class SwitchExample1 {

    public static void main(String[] args) {

        // Declare a variable age
        int age = 20;

        // Check the value of age
        switch (age) {

        // Case age = 18
        case 18:
            System.out.println("You are 18 year old");
            break;

        // Case age = 20
        case 20:
            System.out.println("You are 20 year old");
            break;

        // Remaining cases
        default:
            System.out.println("You are not 18 or 20 year old");
        }

    }

}
Das Ergebnis von dem Starten der class  SwitchExample1:
Beachten Sie, dass Die Anweisung case einen bestimmten Wert fördert. Sie können nicht wie folgend machen
// This is not allowed !!
case (age < 18) :

// case only accept a specific value eg:
case 18:
  // Do something here
  break;
Ein anderes Beispiel
SwitchExample2.java
package org.o7planning.tutorial.javabasic.controlflow;

public class SwitchExample2 {

    public static void main(String[] args) {

        // Declare a variable age
        int age = 30;

        // Check the value of age
        switch (age) {

        // Case age = 18
        case 18:
            System.out.println("You are 18 year old");

        // Case age in 20, 30, 40
        case 20:
        case 30:
        case 40:
            System.out.println("You are " + age);
            break;

        // Remaining case:
        default:
            System.out.println("Other age");
        }

    }

}
Ergebnis des Beispiel

5.5- for Loop

Das ist Struktur der Schleife:
for ( start_value; end_value; increment_number ) {
  // Code here
}
Ein Beispiel sehen
ForLoopExample1.java
package org.o7planning.tutorial.javabasic.loop;

public class ForLoopExample1 {

    public static void main(String[] args) {

        // Declare a variable, step in loop
        int step = 1;

        // Declare a variable value with the start value is 0
        // After each iteration, value will increase 3
        // And the loop will end when the value greater than or equal to 10
        for (int value = 0; value < 10; value = value + 3) {

            System.out.println("Step =" + step + "  value = " + value);

            // Increase 1
            step = step + 1;

        }

    }

}
Das Ergebnis für das Starten der class ForLoopExample1:
Ein weiteres Beispiel: Die Summe von 1 bis 100 kalkulieren
ForLoopExample2.java
package org.o7planning.tutorial.javabasic.loop;


public class ForLoopExample2 {

    
    // This is an example to sum the numbers from 1 to 100,
    // and print out the results to the console.
    public static void main(String[] args) {
           
        // Declare a variable
        int total = 0;
        
        // Declare a variable value
        // Initial value is 1
        // After each loop increases the 'value' by adding 1
        // Note: value++ equivalent to the statement: value = value + 1;
        // value-- equivalent to the statement: value = value - 1;
        for(int value = 1; value <= 100; value++)  {
            
            // Increase 'total' by adding value
            total = total + value;        
        }
        
        System.out.println("Total = "+ total);

    }

}
Das Ergebnis

5.6- while Loop

Hier ist die Struktur der Schleife while:
// While the condition is true, then do something.
while ( condition ) {
 // Do something here.
}
Sehen Sie das Beispiel
WhileExample1.java
package org.o7planning.tutorial.javabasic.loop;

public class WhileExampe1 {

    
    public static void main(String[] args)  {
        
        int value = 3;
        
        // While the value is less than 10, the loop is working.
        while( value < 10)  {
            
            System.out.println("Value = "+ value);
            
            // Increase value by adding 2
            value = value + 2;
        }
    }
}

5.7- do-while Loop

Das ist die Struktur der Schleife  do-while:
// The do-while loop to work at least one round
// and while the condition is true, it also works to
do {
  // Do something here.
}
while ( condition );
Sehen Sie das Beispiel
DoWhileExample1.java
package org.o7planning.tutorial.javabasic.loop;

public class DoWhileExample1 {

   public static void main(String[] args) {

       int value = 3;

        // do-while loop will execute at least once
       do {

           System.out.println("Value = " + value);

           // Increase 3
           value = value + 3;

       } while (value < 10);

   }
}
das Ergebnis

6- Arrays in Java

6.1- Was ist Array?

Array ist ein benachbar zueinander Liste der Elementen in Speicher 
Sehen Sie ein Array mit 5 Elemente, die aus int-Zahlen bestehen

6.2- Arbeiten mit Arrays

Wie melden Sie ein Array in Java ein
// Declare an array, not a specified number of elements.
int[] array1;


// Initialize the array with 100 elements
// The element has not been assigned a specific value
array1 = new int[100];

// Declare an array specifies the number of elements
// The element has not been assigned a specific value
double[] array2 = new double[10];

// Declare an array whose elements are assigned specific values.
// This array with 4 elements
long[] array3= {10L, 23L, 30L, 11L};
Sehen Sie ein Beispiel:
ArrayExample1.java
package org.o7planning.tutorial.javabasic.array;

public class ArrayExample1 {

    
    
    public static void main(String[] args) {
        
        // Declare an array with 5 elements
        int[] myArray= new int[5];
        
        // Note: the first element of the array index is 0:
        
        // Assigning values to the first element (index 0)
        myArray[0] = 10;
        
        // Assigning values to the second element (index 1)
        myArray[1] = 14;
        
        myArray[2] = 36;
        myArray[3] = 27;
        
        // Value for the 5th element (the last element in the array)
        myArray[4] = 18;
        
        // Print out element count.
        System.out.println("Array Length="+ myArray.length);
        
        // Print to Console element at index 3 (4th element in the array)
        System.out.println("myArray[3]="+ myArray[3]);
        
        // Use a for loop to print out the elements in the array.
        for(int index=0; index < myArray.length; index++) {
            System.out.println("Element "+ index+" = "+ myArray[index]);    
        }
    }
}
Das Ergebnis
Ein weiteres Beispiel stellt ein Schleife for für die Ernennung des Wert der Elemente dar
ArrayExample2.java
package org.o7planning.tutorial.javabasic.array;

public class ArrayExample2 {

    public static void main(String[] args) {

        // Declare an array with 5 elements
        int[] myArray = new int[5];

        // Print out element count
        System.out.println("Array Length=" + myArray.length);

        // Using loop assign values to elements of the array.
        for (int index = 0; index < myArray.length; index++) {
            myArray[index] = 100 * index * index + 3;
        }
        
        // Print out the element at index 3
        System.out.println("myArray[3] = "+ myArray[3]);
    }
}
das Ergebnis

7- Klasse, Instanz, Constructor

Sie brauchen die Untercheidung zwischen 3 Definition zu wissen
  • Class
  • Constructor)
  • Instance)
Wenn wir über den Baum zu sprechen, ist es etwas abstrakt, es ist eine Klasse. Aber wenn wir zu einem bestimmten Baum zeigte, war es klar, und das ist die Instanz (Instance)
Oder wenn wir über die Person sprechen, ist das abstrakt, es ist eine Klasse. Aber wenn Sie auf Sie oder mich hinweisen, es sind zwei verschiedene Instanzen, die gleiche Klasse von Menschen.
Person.java
package org.o7planning.tutorial.javabasic.javastructure;

public class Person {

    
    // This is field
    // The name of Person
    public String name;
    
    // This is a Constructor
    // Use it to initialize the object (Create new object)
    // This constructor has one parameter
    // Constructor always have the same name as the class.
    public Person(String persionName) {
        // Assign the value of the parameter into the 'name' field
        this.name = persionName;
    }

    // This method returns a String ..
    public String getName() {
        return this.name;
    }

}
Person klasse hat keine main methode. TestPerson klasse erstellen Person Objekt über Konstruktor
PersonTest.java
package org.o7planning.tutorial.javabasic.javastructure;

public class PersonTest {

   public static void main(String[] args) {

       // Create an object of class Person
       // Initialize this object via constructor of class Person
       // Specifically, Edison
       Person edison = new Person("Edison");

       // Class Person has the method getName()
       // Use the object to call getName():
       String name = edison.getName();
       System.out.println("Person 1: " + name);

       // Create an object of class Person
       // Initialize this object via constructor of class Person
       // Specifically, Bill Gates
       Person billGate = new Person("Bill Gates");

       // Class Person has field name (public)
       // Use objects to refer to it.
       String name2 = billGate.name;
       System.out.println("Person 2: " + name2);

   }

}
Ergebnis des Beispiel

8- Field

Zum nächsten diskutieren wir einige Definition
Das Feld (Field)
  • normale Field
  • static Field)
  • final Field)
  • static final Field)
Sehen Sie ein Beispiel über die normale Field und static Field
FieldSample.java
package org.o7planning.tutorial.javabasic.javastructure;

public class FieldSample {
    
    // This is static field.
    public static int MY_STATIC_FIELD = 100;
    
    // This is normal field.
    public String myValue;
    
    
    // Constructor
    public FieldSample(String myValue)  {
        this.myValue= myValue;
    }

}
FieldSampleTest.java
package org.o7planning.tutorial.javabasic.javastructure;

public class FieldSampleTest {

    public static void main(String[] args) {

        // Create the first object.
        FieldSample obj1 = new FieldSample("Value1");

        System.out.println("obj1.myValue= " + obj1.myValue);

        // Print out static value, access via instance of class (an object).
        System.out.println("obj1.MY_STATIC_FIELD= " + obj1.MY_STATIC_FIELD);

        // Print out static value, access via class.
        System.out.println("FieldSample.MY_STATIC_FIELD= "
                + FieldSample.MY_STATIC_FIELD);

        // Create second object:
        FieldSample obj2 = new FieldSample("Value2");

        System.out.println("obj2.myValue= " + obj2.myValue);

        // Print out static value, access via instance of class (an object)
        System.out.println("obj2.MY_STATIC_FIELD= " + obj2.MY_STATIC_FIELD);

        System.out.println(" ------------- ");

        // Set new value for static field.
        // (Or using: FieldSample.MY_STATIC_FIELD = 200)
        obj1.MY_STATIC_FIELD = 200;

        // It will print out the value 200.
        System.out.println("obj2.MY_STATIC_FIELD= " + obj2.MY_STATIC_FIELD);
    }
}
Das Ergebnis
Die Fields final ist die Fields, damit Sie nicht die Wert für sie zuweisen können. Sie ist so gleich wie ein Konstante
FinalFieldExample.java
package org.o7planning.tutorial.javabasic.javastructure;

public class FinalFieldExample {

    // A final field.
    // Final Field does not allow to assign new values.
    public final int myValue = 100;

    // A static final field.
    // Final field does not allow to assign new values.
    public static final long MY_LONG_VALUE = 1234L;
}

9- Methode (Method)

Die Methode (Method):
  • Normale Method.
  • static Method 
  • final Method  (in die Erbchaft der class gemeint).
MethodSample.java
package org.o7planning.tutorial.javabasic.javastructure;

public class MethodSample {

    public String text = "Some text";
    
    // Default Constructor
    public MethodSample()  {
        
    }

    // This method return a String
    // and has no parameter.
    public String getText() {
        return this.text;
    }

    // This is a method with one parameter String.
    // This method returns void (not return anything)    
    public void setText(String text) {
        // this.text reference to the text field.
        // Distinguish the text parameter.        
        this.text = text;
    }

    // Static method
    public static int sum(int a, int b, int c) {
        int d =  a + b + c;
        return d;
    }
}
MethodSampleTest.java
package org.o7planning.tutorial.javabasic.javastructure;

public class MethodSampleTest {

    public static void main(String[] args) {

        // Create instance of MethodSample
        MethodSample obj = new MethodSample();

        // Call getText() method
        String text = obj.getText();

        System.out.println("Text = " + text);

        // Call method setText(String)
        obj.setText("New Text");

        System.out.println("Text = " + obj.getText());

        // Static method can be called through the class.
        // This way is recommended. (**)
        int sum = MethodSample.sum(10, 20, 30);

        System.out.println("Sum  10,20,30= " + sum);

        // Or call through objects
        // This way is not recommended. (**)        
        int sum2 = obj.sum(20, 30, 40);

        System.out.println("Sum  20,30,40= " + sum2);
    }

}

10- Vererbung in Java

Java ermöglicht die Class aus einer Class ausgeweitert. Die ausgeweiterten Class ist die Tochterclass genannt. die Tochterclass können die Field und Methode vom Vaterclass erben
Animal.java
package org.o7planning.tutorial.javabasic.inheritance;

public class Animal {

 public Animal() {

 }

 public void move() {
     System.out.println("Move ...!");
 }

 public void say() {
     System.out.println("<nothing>");
 }

}
Cat.java
package org.o7planning.tutorial.javabasic.inheritance;

public class Cat extends Animal {

    // Override method of the Animal class.
    public void say() {
        System.out.println("Meo");
    }
}
Dog.java
package org.o7planning.tutorial.javabasic.inheritance;

public class Dog extends Animal {

   // Override method of the Animal class.
   public void say() {
       System.out.println("Go");
   }
}
Ant.java
package org.o7planning.tutorial.javabasic.inheritance;

public class Ant extends Animal {

}
AnimalTest.java
package org.o7planning.tutorial.javabasic.inheritance;

public class AnimalTest {

    public static void main(String[] args) {

        // Declaring a Cat object.
        Cat cat = new Cat();

        // Check 'cat' instance of Animal.
        // The result is clearly true.
        boolean isAnimal = cat instanceof Animal;
        System.out.println("cat instanceof Animal?"+ isAnimal);

        // ==> Meo
        // Call the method say() of the Cat.
        cat.say();


        // Declare an object Animal
        // Initialize the object through the Constructor of the Cat.
        Animal cat2 = new Cat();

        // ==> Meo
        // Call to say() of Cat (Not Animal)
        cat2.say();

        // Create the object Animal
        // Through the Constructor of the class Ant.        
        Animal ant = new Ant();

        // Ant has no say() method.
        // It call to say() method that inherited from the parent class (Animal)        
        ant.say();
    }
}
Ergebnis des Beispiel

11- Arbeiten mit Javadoc

Javadoc ist ein Unterlagen für die Nachschlagen der Benutzungsweise der Class in java. Zum Beispiel: Class A schlienßt welche Method, Field, construtor,...
Sie können die Hinweise der Herunterladung und Benutzen der Jdk9 Javadoc mit der CHM Format in :