Java is an object-oriented programming language (Object Oriented Programming: OOP). The object-oriented programming language has the concepts of classes and objects. So what is the conceptual difference between them? Come find out with me below.
The following explanationWhat is a class and what is an object in Java language?
A class is a collection of entities with certain common characteristics. It is an abstract data type, which is an abstraction of entities with the same characteristics. In object-oriented programming languages, a class is an abstraction of the properties and behavior of a type of "thing".
An object is an entity in the real world. There is a one-to-one correspondence between objects and entities. This means that every entity in the real world is an object, so the object is a specific concept.
A class is a collection of objects, and the object is an instance of the class; the object is generated through new className and is used to call the method of the class; the constructor method of the class.
The difference between classes and objects
1. A class is an abstract concept. It does not exist in real time/space. A class only defines abstraction for all objects. properties and behaviors. Just like the class "Person", although it can contain many individuals, it itself does not exist in the real world.
2. The object is a concrete instance of the class. It is a real thing.
3. Class is a static concept, and the class itself does not carry any data. When no objects are created for a class, the class itself does not exist in the memory space.
4. Object is a dynamic concept. Each object has its own unique properties and behaviors that are different from other objects. An object's properties can change as a result of its own behavior.
Give an example to illustrate the following class
For example, Person (person) is a class, then a specific person "Zhang San" is the object of the class "Human" , and information such as "name, height, weight" are the attributes of the object, and human actions such as "eating, dressing" are the methods of the object. In short, a class is a collection of things with the same characteristics, and an object is a specific instance of the class. At the same time, classes have polymorphism and inheritance. For example, "human beings" can be divided into "men, women", "elderly people, children", then "men, women" are subclasses of "human beings" and so on.
The definition of class Person in Java language is often as follows:
public class Person { private String name; //属性:姓名 private int height; //属性:身高 private int weight; //属性:体重 public Person() {} public Person(String name, int height, int weight) { this.name = name; this.height = height; this.weight = weight; } //... some methods... public void doSth() { //行为: //... do something } }
The object is a specific individual of the class. For example, Zhang San is an object of class Person. There may be countless Person objects (just like there are billions of people on earth).
Methods are called by objects, such as "Zhang San. Dressing ()". Methods modified with static are static methods or called shared methods. They are generally called directly using the class name.
In Java, you can use new to create an object. For example:
Person zhangsan = new Person("Zhangsan", 170, 65); //创建对象:“Zhangshan” zhangsan.doSth(); //对象行为:对象自己发出行为
Related learning recommendations: java basics
The above is the detailed content of How to understand java objects?. For more information, please follow other related articles on the PHP Chinese website!