栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java中类的方法分类:构造方法、实例方法和类方法的区别

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java中类的方法分类:构造方法、实例方法和类方法的区别

构造方法

定义:负责对象的初始化工作,并为实例变量赋予合适的初始值。作用:构造出一个类的实例;构造方法在调用执行之后是有返回值的,但是不用写“return”语句,因为构造方法结束的时候java程序自动返回值,返回值类型是构造方法所在类的类型,由于构造方法的返回值类型就是类本身,所以返回值类型不需要编写。当一个类你没有自定义构造方法的话,系统默认提供一个无参构造,这个构造方法称为缺省构造器。如果手动定义了构造方法,那么系统将不再提供缺省构造器。构造方法支持重载实例变量的内存空间是在构造方法执行的过程中完成开辟的,同样的,实例变量的初始化也是在构造方法执行的过程中完成的。书写要求:方法名与类名相同;不要写返回类型(如void、return等);不能被static、final、native、abstract和synchronized修饰,不能被子类继承。调用无参构造方法会默认给当前类的实例变量初始化,如下图 实例方法

无static修饰,也叫非静态方法当类的字节码文件被加载到内存时,类的实例方法并没有被分配入口地址,只有该类的对象被创建后,才会给实例方法分配入口地址,从而实例方法可以被类创建的所有对象调用 ,还有一点就是,当第一个类的对象被创建时,实例方法的入口地址会完成分配,后续创建对象时,不会再分配入口地址,即该类的所有对象共用实例方法的入口地址,当该类的所有对象都被销毁时,入口地址才会消失。实例方法可以引用实例变量和类变量实例方法可以使用super和this关键字实例方法中可以调用类方法 类方法

有static修饰,也叫静态方法。当类的字节码文件被加载到内存时,类方法的入口地址就会完成分配,所以类方法不仅可以被该类的对象调用,也可以直接通过类名完成调用,类方法的入口地址只有程序退出时才消失。类方法中不能引用实例变量,因为给类方法分配内存地址的时候,实例变量还未分配内存地址。在类方法中不能使用super和this关键字,因为super和this分别是指向父类和本类的对象,在类方法中调用的时候,这些指代的对象可能还没有创建出来。类方法中不能调用实例方法。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/721048.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号