当前位置: 首页 > 知识库问答 >
问题:

我们可以说构造函数是Java方法吗?

吕皓
2023-03-14

正如我们所知,Java是一种面向对象的语言。在Java中,一切都是对象。我们还知道对象有一些东西(实例变量/字段)和一些事情(方法)。它的安全,我们改变了使用方法,即实例变量的状态;二传手

共有3个答案

经清野
2023-03-14

Java中的构造函数

Java构造函数在对象创建时被调用。它构造值,即为对象提供数据,这就是它被称为构造函数的原因。构造函数实际上返回了当前的类实例(不能使用return type,但它会返回一个值)。构造函数基本上有两条规则。

1) 构造函数名称必须与其类名相同2)构造函数不能有显式返回类型

构造函数的类型

1) 默认构造函数(无参数构造函数)

class Bike1{  
Bike1(){System.out.println("Bike is created");}  
public static void main(String args[]){  
Bike1 b=new Bike1();  
}  
}  

2) 参数化构造函数

class Student4{  
int id;  
String name;  

Student4(int i,String n){  
id = i;  
name = n;  
}  
void display(){System.out.println(id+" "+name);}  

public static void main(String args[]){  
Student4 s1 = new Student4(111,"Karan");  
Student4 s2 = new Student4(222,"Aryan");  
s1.display();  
s2.display();  
家志学
2023-03-14

直接来自JLS(第8章)

构造函数用于创建作为类实例的对象(§12.5,§15.9)。ConstructorDeclarator中的SimpleTypeName必须是包含构造函数声明的类的简单名称;否则会发生编译时错误。

在所有其他方面,构造函数声明看起来就像没有结果的方法声明(§8.4.5)。

构造函数声明不是成员。它们永远不会被继承,因此不会被隐藏或覆盖。

楚德辉
2023-03-14

我们能说构造函数是Java中的方法吗?

如果您是Java的新手,并且第一次尝试掌握这个概念,您可以将构造函数视为工厂方法。例如,在Python中,构造函数只是一个名为__init__的方法。)然而,你应该快速前进,明白有很多不同之处。举几个例子:

  • 构造函数没有返回类型
 类似资料:
  • 问题内容: 我遇到的情况是,在实例化类时,我只想读取配置文件一次。 假设我有一个名为的方法,该方法读取配置并将其放入对象中。当程序需要使用配置值时,它将使用定义键读取对象。我想知道构造函数仅在生命周期中调用一次。我可以将我的方法放入构造函数中,这将使我有一次调用的好处,还是有另一种机制可以这样做? 问题答案: 更好的设计是 工厂设计模式

  • 问题内容: 假设我有一个实现Runnable接口的抽象基类。 这是一些派生类之一。 关键是我希望我的基类做一些常规的事情,而不是每次都复制它。实际上,它运行良好,输出始终相同: 基本构造函数使用参数1创建的派生线程使用参数1运行派生 但是在JAVA中启动在构造函数中调用抽象方法的线程是否安全?因为据我所知,在大多数情况下,在C ++和C#中是不安全的。谢谢! 问题答案: 此代码演示了为什么你应该

  • 问题内容: 构造函数可以是私有的吗?私有构造函数有何用处? 问题答案: 是的,构造函数可以是私有的。这有不同的用途。一个这样的用途是用于singleton设计反模式,我建议您不要使用它。另一个更合法的用法是委托构造函数;您可以有一个构造函数,它接受许多不同的选项,这实际上是一个实现细节,所以您将其设为私有,但剩余的构造函数将其委托给它。 作为委托构造函数的一个例子,下面的类允许您保存一个值和一个类

  • 问题内容: 试图扩大Spock在工作中的吸引力并遇到此问题。实际上是试图为Groovy类编写单元测试,但是它调用了Java。静态方法调用私有构造函数。代码如下: “ SolrZkClient”来自第三方(Apache)Java库。由于它试图连接到ZooKeeper,因此我想对此单元测试进行模拟(而不是在单元测试的内部运行)。 我的测试毫不费力地进入了构造函数,但是我无法超越那个ctor: 反正有这

  • 本文向大家介绍Java构造器(构造方法)与方法区别说明,包括了Java构造器(构造方法)与方法区别说明的使用技巧和注意事项,需要的朋友参考一下 构造器,又称为构造方法。构造器用于构造该类的实例,也就是对象。 格式如下:[修饰符] 类名 (形参列表){//n条语句} 构造方法是一种特殊的方法,与一般的方法区别:    1.构造方法的名字必须与定义他的类名完全相同,没有返回类型,甚至连void也没有。

  • 问题内容: 我所知道的是,编译器在字节码中编写了一个默认的无参数构造函数。但是,如果我们自己编写,则该构造函数会自动调用。这种现象是构造函数压倒一切的吗? 问题答案: 您所描述的不是最重要的。如果您未指定默认构造函数,则编译器将创建一个默认构造函数。如果是子类,它将调用默认的父构造函数(super()),还将所有实例变量初始化为由该类型的默认值确定的默认值(数字类型为0,布尔值为false,对象为