Java Classes and Objects (vi)------The difference between an instance variable and a class variable, the difference between an instance method and a class method

Source: Internet
Author: User

Instance variable
    1. Instance variables are declared in a class, but outside of methods, construction methods, and statement blocks;
    2. When an object is instantiated, the value of each instance variable is then determined;
    3. Instance variables are created when the object is created and destroyed when the object is destroyed;
    4. The value of the instance variable should be referenced by at least one method, construct method, or statement block, so that the external can obtain instance variable information through these methods;
    5. Instance variables are visible to methods, construction methods, or block statements in a class. In general, you should set the instance variable to private. By using the access modifier, the instance variable is visible to the child class;
    6. The instance variable has a default value. The default value for a numeric variable is 0, the default value for a Boolean variable is false, and the default value for the reference type variable is null. The value of a variable can be specified at the time of declaration, or it can be specified in a constructor method;
    7. Instance variables can be accessed directly from the variable name. However, in static methods and other classes, you should use the fully qualified name: Obejectreference.variablename.
class variables (static variables)
    1. Class variables, also known as static variables, are declared in the class with the static keyword, but must be outside the method construction method and statement block.
    2. No matter how many objects a class creates, the class has only one copy of the class variable.
    3. Static variables are seldom used except when declared as constants. Constants are variables declared as public/private,final and static types. Constants cannot be changed after initialization.
    4. Static variables are stored in a static storage area. are often declared as constants, and static declaration variables are seldom used alone.
    5. Static variables are created at the beginning of the program and are destroyed at the end of the program.
    6. has similar visibility to instance variables. However, in order to be visible to the consumer of a class, most static variables are declared as public types.
    7. The default value is similar to the instance variable. The default value for numeric variables is 0, the Boolean default is False, and the reference type default value is null. The value of a variable can be specified at the time of declaration, or it can be specified in a constructor method. In addition, static variables can be initialized in static statement blocks.
    8. Static variables can be accessed by:classname.variablename .
    9. When a class variable is declared as public static final type, the class variable name must use uppercase letters. If the static variable is not public and final, it is named in the same way as the instance variable and the local variable.
classtixing{floatUp,height; Static floatDown ; Tixing (floatXfloatYfloatz) { up=x; Height=y; down=Z; }} Public classep3_9{ Public Static voidMain (String args[]) {tixing one=NewTixing (A); System.out.println ("One's Down is:" +One.down); Tixing=NewTixing (4,5,6); System.out.println ("One's Down is:" +One.down); System.out.println ("The Other" is: "+Two.down); System.out.println ("Tixing's" is: "+Tixing.down); }}

Instance methods and class methods access to instance variables and class variables

An instance method can manipulate instance variables of the current object, or it can manipulate class variables. An instance method is called by an instance object.

Class methods cannot access instance variables, only class variables. A class method is called by a class name or an instance object. The this or Super keyword cannot appear in a class method

classtixing{Private floatUp,height; Private Static floatDown ; Tixing (floatXfloatYfloatz) { up=x; Height=y; down=Z; }     Public voiddisplay () {System.out.println ("Up is:" +up+ "height are:" +height+ "Down is:" +Down ); }     Public Static voidChangefloatNumber ) { Down=Number ; //System.out.println ("Height:" +height);//Error    }} Public classep3_9{ Public Static voidMain (String args[]) {tixing one=NewTixing (A);        One.display (); Tixing=NewTixing (4,5,6);        One.display ();            Two.display (); //Tixing.display ();//ErrorOne.change (101);        One.display (); Two.change (102);        Two.display (); }}

Java Classes and Objects (vi)------The difference between an instance variable and a class variable, the difference between an instance method and a class method

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.