Home > Java > Javagetting Started > body text

Detailed introduction to classes and objects in java

王林
Release: 2019-11-30 14:36:27
forward
2329 people have browsed it

Detailed introduction to classes and objects in java

Classes and Objects

We know that objects represent an entity that can be clearly identified in the real world (everything is an object). Each object Each has its own unique identity, status and behavior.

A class is a collective term for things with similar characteristics and behaviors. Use a common class to define objects of the same type. A class is a template, blueprint, or contract that defines what the object's data fields are and what its methods do.

An object is an instance of a class, and multiple instances can be created from a class.

Note: The main function does not need to create an object and can be called directly (by JVM).

java related video tutorials: java learning video

Classification of classes

Main class: Mainly responsible for the program Operation

Entity class: Mainly responsible for describing things

Tool class: Generally, objects are not created and functions are called directly through classes (static)

The following are the ones we commonly use Several familiar tool classes:

Math.abs() Math.random()
Arrays.toString();
System.out.println();
Copy after login

The relationship between objects and classes:

A class is the definition of an object, and an object is created from a class. For example, dog is a class, a collective name for all dogs, and husky is an entity object of the dog class.

How to define a class

Mainly define its characteristics and behavior

Features: variables

Behavior: function

Define the dog class. Its characteristics include name, gender, age, height, weight and coat color. Define 6 member variables for storage. Behaviors include eating and sleeping. Define two member functions to implement it.

class Dog{
    //直接定义在类中的变量 成员变量
    姓名 String name;
    性别 String sex;
    年龄 int age;
    身高 double heigth;
    体重 double weight;
    毛色 String color;
    
    //成员函数(非static函数)
    吃   public void eat(){... return;}
    睡   public void sleep(){... return;}
}
Copy after login

Create specific objects:

public class Mian{
    public static void main(String[] args) {
        Dog Huskies=new Dog();
    }
}
Copy after login

Process of object creation

1. The main function advances the stack

2 , execute new Dog() on the right side of the statement, open up a space in the heap memory, and randomly assign the address

3. Create a space for member variables in the object space, initialize the member variables by default, and create member functions (Not in the object space, nor on the stack, but called on the stack)

4. Create a local variable in the function stack, which stores the address of the object in the heap memory

The difference between local variables and member variables

Difference 1: Different definition locations

Member variables are defined in the class, and local variables are defined in In methods or statements

Difference 2: Different locations in memory

Member variables are stored in objects in heap memory, and local variables are stored in stack memory.

Difference Three: Different declaration cycles

Member variables appear in the heap as the object appears, and disappear from the heap as the object disappears. Local Variables appear on the stack as the method runs, and disappear as the method pops the stack

Difference 4: Different initialization

Member variables are in the heap memory , has a default initialization value, and local variables do not have a default initialization value. They must be manually assigned a value before they can be used.

java Related article tutorial sharing: Java zero-based introduction

The above is the detailed content of Detailed introduction to classes and objects in java. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:csdn.net
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!