Java是一种面向对象的程序设计语言(Object Oriented Programming:OOP),面向对象的程序设计语言中有类和对象的概念,那么它们在概念上到底有什么区别呢?下面和我一起了解一下吧。
下面解释下java语言中什么是类,什么是对象?
类就是具备某些共同特征的实体的集合,它是一种抽象的数据类型,它是对所具有相同特征实体的抽象。在面向对象的程序设计语言中,类是对一类“事物”的属性与行为的抽象。
对象就是一个真实世界中的实体,对象与实体是一一对应关系的,意思就是现实世界的每一个实体都是一个对象,所以对象是一个具体的概念。
类是对象的集合,对象是类的实例;对象是通过new className产生的,用来调用类的方法;类的构造方法 .。
类和对象的区别
1,类是一个抽象的概念,它不存在于现实中的时间/空间里,类只是为所有的对象定义了抽象的属性与行为。就好像“Person(人)”这个类,它虽然可以包含很多个体,但它本身不存在于现实世界上。
2,对象是类的一个具体。它是一个实实在在存在的东西。
3,类是一个静态的概念,类本身不携带任何数据。当没有为类创建任何对象时,类本身不存在于内存空间中。
4,对象是一个动态的概念。每一个对象都存在着有别于其它对象的属于自己的独特的属性和行为。对象的属性可以随着它自己的行为而发生改变。
举一个例子说明下类
比如Person(人)就是一个类,那么具体的某个人“张三”就是“人类”这个类的对象,而“姓名、身高、体重”等信息就是对象的属性,人的动作比如“吃饭、穿衣”等就是对象的方法。总之类就是有相同特征的事物的集合,而对象就是类的一个具体实例。同时类有多态和继承,例如“人类”可以分为“男人、女人”,“老人、小孩”那么“男人、女人”就是“人类”的子类等等。
Java语言中对类Person的定义往往如下:
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 } }
对象是类的具体的个体。比如,张三是类Person的一个对象。Person可能存在无数个对象(就好像地球上存在数十亿人一样)。
方法是被对象调用的比如“张三.穿衣()”,用static修饰的方法是静态的方法或称为共享方法,一般用类名直接调用。
Java中,对象的创建可以使用new来创建一个对象。比如:
Person zhangsan = new Person("Zhangsan", 170, 65); //创建对象:“Zhangshan” zhangsan.doSth(); //对象行为:对象自己发出行为
相关学习推荐:java基础
Atas ialah kandungan terperinci java对象怎么理解?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!