Java's white paper proposed 11 key features in Java language.
(1) Easy: Java's grammar is relatively simple than C , and another aspect is that Java can run software on a small machine, the basic explanation of its support for the support of its support is about 40KB, increasing basic standard libraries and The memory supported by thread needs to increase 125KB.
(2) Distributed: Java has a very powerful routine library of TCP / IP protocol, and Java applications can pass the network through the URL to access the remote object, due to the appearance of the servlet mechanism, making Java programming very efficient, Now many large web server support servlet.
(3) OO: Object-oriented design is a programming technology on an interface of objects and objects. It has a lot of object-oriented and C , in relation to multiple inheritance and the original model of Java.
(4) Runtight: Java adopted a safety pointer model to reduce possible types of rewriting memory and data crash.
(5) Safety: Java is used to design a network and distribution system, which brings new security issues, and Java can build antivirus and anti-attack SYSTEM. Facts prove that Java is better in this area of the Antirate.
(6) Neutral Architecture: Java compiles its generating architecture neutral target file format can be executed on many processors, and the compiler generated command bytecode (Javabytecode) implements this feature, this byte code can be on any machine Explanation execution.
(7) Portability: The size and algorithm of the basic data structure type in Java have strict regulations, so the portability is very good.
(8) Multithread: Java processing multi-threaded process is simple, Java is handed over to the bottom operating system or thread program to complete the multi-thread implementation. So multithreading is one of the popular reasons for Java as a server-side development language.
(9) Applet and servlet: The program that can be executed on the web page called Applet, which needs to support a lot of browsers in Java, and Applet supports dynamic web pages, which is what many other languages cannot be done.
basic concepts
1. The only relationship between the Object is what the object's interface is, just like the computer's seller, she doesn't matter what the internal structure of the power supply is, he only does it provide you with electricity, but just know that CAN or Not is not HOW and why. All programs are composed of certain properties and behavior objects, and different objects access through function calls. All communication between the objects is called by way of ways, through the package object data, large. Improve the reuse rate.
2. The most important idea inoo is class, class is a template is a blueprint, constructed from the class, which is created an instance of this class (Instance).
3. Package: Incoming data and behavior in a package) and the implementation process of the object user hides the data, and the data in an object calls his instance field.
4. By expanding a class to get a new class called inheritance, and all classes are extended by Object roots, and the root super class will be introduced.
5. 3 main features of the object
Behavior - Description This object can do .State --- When an object is applied to the method of the object. Identity --- distinguishing the mark with other similar behavior objects. Each object has a unique INDENTITY and between the three affect each other.
6. The relationship between classes:
USE-A: Dependence HAS-A: Aggregation Relationship IS-A: Inheritance Relationship - Example: A Class A inherited Class B, at this time, Class A not only has Class B method, but also its own method. (Personality) Existence in commonality)
7. Construction Objects Use a constructor: Presented, the constructor is a special method, constructing the object and initializes it.
Example: Data class constructor is called DATA
New Data () --- Constructs a new object and initializes the current time. Data happyday = new data () - The object assigns an object to a variable happyday, so that the object can be used multiple times, here must declare The value of the variable and the object variable is different. NEW returns is a reference. Constructor features: There are 0 constructors, one or more parameter constructors and classs of the same names can have multiple constructors without the return value constructor to always be used with the New operator.
8. Overload: When multiple methods have the same name and contain different parameters, it is overloaded. The compiler must select which method of calling.
9. Package Java allows one or more classes to become a group, called packets to facilitate organizational tasks, standard Java libraries are many packages .java.lang java.util Java, NET, etc. It is all Java packages in the Java and Javax package.
10. Inherited Thoughts: Allow new classes on the basis of existing classes, when you inherit an existing class, then you have multiplexed the methods and fields of this class, and you can add it in the new class. New methods and fields.
11. Extended class: Extended class fully reflects the inheritance relationship of IS-A. Form is: Class (subclass) Extends.
12. Polymorphism: In Java, the object variable is polymorphically. Multiple inheritance is not supported in Java.
13. Dynamic Binding: Mechanism of calling an object method.
(1) The type and method name of the compiler check the object declaration.
(2) The compiler checks the parameter type called by the method.
(3) Static binding: If the method type is the Priavte Static Final compiler, which method will be accurately known.
(4) When a program is running and using a dynamic binding to call a method, then the virtual machine must call the method version of the actual type of object to which X points to the X.
(5) Dynamic binding: It is very important to make the program become scalable without need to recompile the filed code.
14.Final Class: In order to prevent some people from derived new categories from your class, this type is not expandable.
15. Dynamic calls are longer than static calls.
16. Abstract class: The class that specifies one or more abstract methods must be defined as Abstract.
Example: Public Abstract String GetDescripition
17. Each class in Java is expanded from the Object class.
18. Equal and toString methods in the Object class.
Equal is used to test whether an object is equal to another object.
TOSTRING returns a string that represents the object, almost every class overloads the method to return the correct representation of the current state. (Tostring method is a very important method)
19. Universal Programming: All values of any class type can be replaced with the object class variable.
20. Array List: ArrayList dynamic array list, is a class library, defined in the java.uitl package, automatically adjusts the size of the array.
21. The getClass method in the Class class Object class returns an instance of the CKASS type. When the program is started, the class containing the main method will be loaded. The virtual machine should load all the classes he need, and each loaded class is loaded. the type.
22. The Class class provides powerful functional reflection for programming programming that can dynamically manipulate Java code. This feature is especially useful for Javabeans, using reflection Java to support VB programmers used to use.
The programming reflector capable of analyzing the capabilities, the package of this feature in Java is very powerful to the java.lant.
1. The ability to analyze class at runtime. 2. Explore the object of the class at runtime. 3. Implement universal array manipulation code. 4. Provide method objects.
This mechanism is primarily targeted by tools rather than applications and procedures.
The most important part of the reflective mechanism is to allow you to check the structure of the class. The API used by:
Java.lang.reflect.field Return to the field .java.Reflect.Method Return to the method .java.lang.reflect.constructor Returns the parameter. Method pointer: Java has no method pointer, pass the address of a method to another, can be behind Call it and the interface is a better solution.
23. Interface indicates what the class does not specify how to do it, and a class can implement one or more interface.
24. The interface is not a class, but a set of specifications for classes that meet the interface requirements.
If you need to implement an interface, you need 2 steps:
1. The specified interface that is declared needs to be implemented. 2. Provide definitions of all methods in the interface.
Declare a class to implement an interface to use the imports keyword
Class Actionb IMPLEMENTS Comparable Its ActionB needs to provide a CompareTo method. The interface is not a class, and an interface cannot be instantiated with NEW.
25. A class has only one superclass, but a class can implement multiple interfaces. An important interface in Java: Cloneable
26. Interface and callback. Programming a common mode is a callback mode. In this mode you can specify a method of callback objects on a timing when a specific time occurs.
Example: ActionListener interface monitors. Similar APIs are: java.swing.joptionpane
Java.swing.timer java.awt.tookit
27. Object Clone: Clone method is Object a protection method, which means that your code cannot be simply call it.
28. Internal Class: One internal class definition is a class defined in another internal class.
The reason is that:
1. An internal class object can access the implementation of the object that creates it, including private data.
2. For other classes in the same package, the internal classes can hide.
3. Anonymous internal classes can be very convenient to define callbacks.
4. Use the internal class to write event drivers very convenient.
29. Proxy (PROXY):
1. Specify the interface to request all code
2. Object class definitions All methods (TSTRING Equals)
30. Data Type: Java is emphasized the type of language, each variable must first declare that it is type, there are 8 basic types in Java. 4 is integer, 2 is a floating point, one is a character type , Which is used in the Unicode encoding characters, Boolean.