Java中构造方法、实例方法、类方法的区别

java构造方法的作用总结 在本篇文章里小编给大家整理了关于java构造方法的相关知识点以及实例代码,有需要的朋友们可以学习下。 立即下载

1. 构造方法

       构造方法负责对象的初始化工作,为实例变量赋予合适的初始值。必须满足以下的语法规则:

 

  • 方法名与类名相同;
  • 不要返回类型(例如return、void等);
  • 不能被static、final、native、abstract和synchronized修饰,不能被子类继承。

        例如以下例子:

 

 

public class Sample{
   private in x;
   public Sample(){              //不带参数的构造方法
      this(1);
   }
   public Sample(int x){         //带参数的构造方法
      this.x=x;
   }
   public int Sample(int x){     //不是构造方法,return
      return x++;
   }
}

        

 

       1.1. 默认构造方法

                默认构造方法时没有参数的构造方法,分为

                    a.隐含的默认构造方法:public ClassName(){}

                    b.程序显示定义默认构造方法:public Employee(){this("无名氏");}

                可以调用ClassName类的默认构造方法来创建对象,没有默认构造方法则不合法,例如:

                   

ClassName c=new ClassName();   //此语句合法

 

       1.2. 重载构造方法

                通过new创建一个对象后,在不同的条件下,对象可能会有不同的初始化行为,可以通过重载构造方法来表达对象的初始化行为。具体参考this关键字的用法。

 

        1.3. 子类调用父类的构造方法

                父类的构造方法不能被子类调用,可以通过super语句调用父类的构造方法。例如:

 

public class MyExpection extends Exceptio{
    public MyException(){
       //调用Exception父类的Exception(String msg)方法
       super("Something is error!");
    }
    public MyException(String msg){
       //调用EXception父类的Exception(String msg)方法
       super(msg);
    }
}

 

                用super调用父类的构造方法必须遵守以下规则:

                        1. 子类的构造方法中不能直接通过父类的方法名调用父类的构造方法,使用super语句;

                        2. 加入在子类的构造方法中有super语句,它必须作为构造方法的第一条语句(同this语句);

        1.4. 构造方法的作用域

 

  • 当前类的其他构造方法通过this语句调用;
  • 当前类的子类的构造方法通过super语句调用;
  • 在程序中通过new语句调用。

        1.5. 构造方法的private访问级别

 

                构造方法为private级别时,意味着只能在当前类中访问它:当前类的其他构造方法中可以通过this语句调用,此外还可以在当前类的成员方法中使用new调用。

                以下场合中,可以把类的所有构造方法声明为private:

 

  • 这个类中仅仅包含一些供其他程序调用的静态方法,没有任何实例方法。
  • 禁止这个类被继承。声明为private后,如果定义了它的子类,子类的方法中无法调用父类的任何构造方法。
  • 类需要把构造自身实例的细节封装起来,不允许其他程序通过new语句创建这个类的实例。提供静态方法。

 

 

2. 类方法

        用static关键字修饰,可以直接通过类名调用,不需要创建类的对象来调用该方法。

 

3. 实例方法

        可以通过类的实例调用对象的方法,也称为成员方法。

 



解忧杂货铺(四):Hightec生成HEX方法+小功能开启 Hightec使用的一些常用技能 阅读详情

相关推荐

JavaFx之集成FontAwesomeFX与JFoenix(十五)

本文详细介绍了如何在JavaFx项目中同时集成JFoenix和FontAwesomeFX,以创建现代化、美观的桌面应用界面。通过Maven依赖配置、动态代码创建和FXML静态声明两种方式,演示了如何将JFoenix的Material Design控件与FontAwesomeFX的丰富矢量图标完美结合,并提供了实战案例展示如何构建一个功能完善的现代化工具栏。

pepsi的博客 437

5.java不同方法的区别(构造方法,实例方法,类方法,static关键字)

对于每个对象操作的static变量都是同一个,但是普通的成员变量随着对象的建立,它也会被建立。static内部类:属于整个外部类,而不是属于外部类的每个对象,它不能访问外部类的非static成员但可以访问外部类的static成员。static属性属于类级别的,即由该类创建的所有实例对象共享同一个static属性。2)static变量是属于整个类的,也称之为类变量,而非静态变量是属于实例对象的,因此也称之为实例变量。static方法只能访问static变量,非static方法可以访问static变量。...

c1776167012的博客 1762

保姆级教程:用ncnn把自训练的YOLOv8模型塞进Android App(附完整代码)

本文提供了一份详细的保姆级教程,指导开发者如何将自训练的YOLOv8模型通过ncnn框架部署到Android应用中。教程涵盖环境配置、模型训练与转换、Android工程集成及性能优化等全流程,并附完整代码实现,帮助开发者快速掌握移动端AI模型部署技术。

weixin_42659194的博客 254

eclipse的使用帮助

快捷键:1、ctl + d   删除选中的行 2、ctl + z   恢复之前的操作 3、ctl + y   返回之前的操作 4、ctl + shift + o   引入外部类 5、alt + up|down    移动选中的代码行 6、ctl + alt + up|down 复制选中的行 在eclipse中打开其他代码的方法File->Openproject from Fil

MFWang1231的博客 478

USB2.0信号完整性测试之眼图

名称线缆颜色引脚描述红色绿色白色GND黑色。

qq_53766840的博客 3283

处理图数据, 安装“Pytorch“ + 图神经网络开源框架“PyG “+ “ogb“使用

"OGB" OSError: [WinError 127] 找不到指定的程序。1.[遇到这类问题往往跟torch安装的工具包(如torch-sparse,torch-scatter,torch-cluster)版本没对应上有关](https://blog.youkuaiyun.com/weixin_42358688/article/details/117433691)2.[OGB使用环境安装与依赖](https://ogb.stanford.edu/docs/home/)Data Loaders3.[torch-geo

Fuguir™的博客 3698

python构造方法和实例方法的区别

构造方法可以用来初始化创建的实例对象的状态 比如 如果实例对象要直接访问实例属性,那么构造方法可以做到,但是如果实例对象要访问实例方法的属性,就会出现错误,此时,需要运行对象的实例方法,才能访问实例方法中的实例属性。 实例方法,是所有实例所独享。 另外还有类方法,自由方法,静态方法,保留方法等。构造方法属于保留方法的一种。 ...

m0_37617773的博客 3235

【DRAM存储器六十九】DDR5介绍--2N mode 和 CS Geardown mode

摘要: DDR5内存速率提升至8400MT/s以上时,信号完整性成为关键挑战。JEDEC在JESD79-5B标准中引入2N Mode和CS Geardown Mode两项技术,通过“时间换稳定性”优化时序裕量。2N Mode默认启用,将命令周期延长至两倍时钟周期,增强全局命令稳定性;CS Geardown Mode则针对片选信号(CS_n)降低采样频率,提升局部信号容错能力。两者均需通过特定寄存器配置,适用于高频场景下的性能与稳定性平衡。这些技术为DDR5在高频运行中提供了可靠的时序保障。

highman110的博客 215

构造方法的作用和用法(对于刚接触的学员)

很多新学员不知道构造方法是做什么的,有的稀里糊涂,那什么是构造方法呢?先来理解一下构造方法的意思。 构造方法是一种特殊的方法,它是一个与类同名且没有返回值类型的方法。对象的创建就是通过构造方法来完成,其功能主要是完成对象的初始化。当类实例化一个对象时会自动调用构造方法。构造方法和其他方法一样也可以重载。 看到这里有很少同学还是不懂,先理解与类同名且没有返回值类型的方法, 那么下来理...

pengaianzhuo的博客 2万+

PyTorch深度学习实战(25)——从零开始实现Mask R-CNN实例分割

Mask R-CNN 是一种在目标检测任务中引入了语义分割的强大框架,通过在 Faster R-CNN 基础上进行扩展,添加了额外的分支网络,不仅可以准确地检测对象的位置和类别,还可以生成每个实例的精确像素级别的语义分割掩码。其模块化的设计可以轻松地应用于不同的任务和数据集,并且可以通过添加更多的分支进行功能扩展,如实例关键点检测等。

盼小辉丶的博客 1万+

车牌识别系统

随这图形图像技术的发展,现在的车牌识别技术准确率越来越高,识别速度越来越快。无论何种形式的车牌识别系统,它们都是由触发、图像采集、图像识别模块、辅助光源和通信模块组成的。车牌识别系统涉及光学、电器、电子控制、数字图像处理、计算视觉、人工智能等多项技术。触发模块负责在车辆到达合适位置时,给出触发信号,控制抓拍。辅助光源提供辅助照明,保证系统在不同的光照条件下都能拍摄到高质量的图像。图像预处理程序对抓拍的图像进行处理,去除噪声,并进行参数调整。然后通过车牌定位、字符识别,最后将识别结果输出。 牌照自动识别是一

FPGA/MATLAB学习教程/源码/项目合作开发 2万+

JAVA中,构造方法与实例方法的区别

                                                                                 构造方法与实例方法的区别1.构造方法负责对象成员的初始化工作,为实例变量赋予合适的初始值,具有特殊的声明规则.2.实例方法是我们程序中为了完成某一个功能的程序的集合。无特殊的声明规则

Hamber_Bao的专栏 2788

风控域——知识图谱相关原理

本文全面介绍了知识图谱在风控领域的应用原理。从基础知识入手,阐述了知识图谱的定义、概念及应用场景,重点聚焦于金融风控。进一步讲解了知识图谱的技术架构,涵盖计算、融合与构建等方面。深入探讨了知识表示、建模、抽取、挖掘、存储、融合、检索和推理等关键技术原理,并结合金融风控实际需求,详细说明了各技术环节的具体应用方法与流程,为构建高效风控知识图谱提供了理论与实践指导。

庄小焱 606

java实例方法_Java中构造方法、实例方法、类方法的区别

1. 构造方法构造方法负责对象的初始化工作,为实例变量赋予合适的初始值。必须满足以下的语法规则:方法名与类名相同;不要返回类型(例如return、void等);不能被static、final、native、abstract和synchronized修饰,不能被子类继承。例如以下例子:1.1. 默认构造方法默认构造方法时没有参数的构造方法,分为a.隐含的默认构造方法:public ClassName...

weixin_33019803的博客 589

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

初学Java中实例方法、类方法、构造方法的区别与this关键字的调用

初学Java中实例方法、类方法、构造方法的区别与this关键字的调用

LKY030的博客 546

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

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

构造方法 定义:负责对象的初始化工作,并为实例变量赋予合适的初始值。 作用:构造出一个类的实例; 构造方法在调用执行之后是有返回值的,但是不用写“return”语句,因为构造方法结束的时候java程序自动返回值,返回值类型是构造方法所在类的类型,由于构造方法的返回值类型就是类本身,所以返回值类型不需要编写。 当一个类你没有自定义构造方法的话,系统默认提供一个无参构造,这个构造方法称为缺省构造器。 如果手动定义了构造方法,那么系统将不再提供缺省构造器。 构造方法支持重载 实例变量的内存空间是在构造方法执行的

ys_xixihaha的博客 3188

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

java class 构造 函数 例子_Java中构造方法、实例方法、类方法的区别

1. 构造方法构造方法负责对象的初始化工作,为实例变量赋予合适的初始值。必须满足以下的语法规则:方法名与类名相同;不要返回类型(例如return、void等);不能被static、final、native、abstract和synchronized修饰,不能被子类继承。例如以下例子:publicclassSample{privateinx;publicSample(){...

weixin_36212762的博客 581

java class 构造 函数 例子_JAVA中构造方法、实例方法、类方法的区别

一. 构造方法构造方法负责对象的初始化工作,为实例变量赋予合适的初始值。必须满足以下的语法规则:方法名与类名相同;不要返回类型(例如return、void等);不能被static、final、native、abstract和synchronized修饰,不能被子类继承。二. 实例方法当类的字节码文件加载到内存中时,类的实例方法并没有被分配入口地址,只有当该类的对象创建以后,实例方法才分配了入口地址...

weixin_42514394的博客 136

java中方法(静态与非静态)的区别——类方法(static修饰的静态方法)、实例方法、构造方法

一.静态变量跟实例变量的区别: 静态变量:由static修饰,在JVM中,静态变量的加载顺序在对象之前,因此静态变量不依附于对象存在,可以在不实例化类的情况下直接使用静态变量,如下代码所示: public class StaticTest { static int a = 13; //静态变量 int b = 14; //非静态变量 public static void main(String[] args) { int c = StaticTest.a;

Atlas!的博客 818

JAVA中构造方法、实例方法(无static/非静态)、类方法(static/静态)的区别

静态方法同类调用:静态方法直接调用静态方法,静态方法需要new才能调用非静态方法 静态方法不同类调用:静态方法通过类名.静态方法调用,静态方法通过new调用非静态方法 非静态方法同类调用:非静态方法直接可以调用静态和非静态方法 非静态方法不同类调用:非静态方法调用静态方法,通过类名.静态方法调用;非静态方法调用非静态方法:通过new对象,再对象.非静态方法调用 JAVA中构造方法、实例方法、类方法的区别 1. 构造方法 构造方法负责对象的初始化工作,为实例变量赋予合适的初始值。必须...

Java后端技术栈 1364

实例方法、类方法、构造方法

Java中类的方法分为类方法(用static修饰,也叫静态方法)和实例方法(没有用static修饰,也叫非静态方法) 实例方法,就是一般的方法 类方法,有static修饰符,典型的主函数 构造方法,没有返回值(就是连void都没有),方法名与类名一样 public static void myMethod();//类方法 public void myMethod2();//实例方法 public ...

优快云1782747395的博客 1万+

Java构造方法(与类名相同的方法)、类方法、类变量、实例方法、实例变量

JAVA构造方法(与类名相同的方法),类方法与实例方法

long_steve的博客 8594

Java~详细区分Java中的构造方法、实例方法与类方法

文章目录构造方法实例方法类方法 构造方法 构造方法负责对象的初始化工作,为实例变量赋予合适的初始值。 要求: 方法名必须与类名相同 无返回值 不能被static final native abstract和synchronized修饰 不能被子类继承。 默认构造方法为无参 可以被重载 如果是子类构造方法,必须在第一行用super调用父类构造方法 构造方法为private级别时,意味着只能在当前类中访问它:当前类的其他构造方法中可以通过this语句调用,此外还可以在当前类的成员方法中使用new调用。 只

Shangxingya的博客 1045

类方法 实例方法 构造方法 this关键字

类方法:1.用static修饰的是类方法.                      2.无论是实例方法还是类方法,在对象创建之后,都可以用“.”运算符调用这些方法。                      3.JAVA语言中,类中的类方法,在该类加载到内存时,就分配了相应的入口地址,所以类方法不但可以被任何对象调用执行,也可以直接通过类名调用,入口地址直到程序退出的时候才会被取消。

JavaLab 4738

java中的实例方法、类方法和构造方法

首先,明确什么是实例变量、类变量、局部变量 在java语言中,变量分为局部变量和成员变量大类。 成员变量(实例变量、类变量)是指在类体内且在方法体外定义的变量,其作用域是整个类。 局部变量是指在方法体内声明的变量,其作用域是从声明处开始至它所在的最小块的语句结束处,另外,方法中的形参、for语句中定义的循环变量也都是属于局部变量。 1.实例变量:在类体内且在方法体外定义的变量,且变量名前面没

xusheng_Mr的博客 4342
上一篇: java类的初始化顺序
下一篇: Java访问权限
hellohm_ndsc
博客等级 码龄14年 4粉丝 2原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值