关于从设计角度理解java代码段
我试图理解一个基于java的开源项目,它的代码段如下关于从设计角度理解java代码段,java,inheritance,access-specifier,Java,Inheritance,Access Specifier,我试图理解一个基于java的开源项目,它的代码段如下 protected SimpleBinaryModel(ExampleSet exampleSet, double threshold) { super(exampleSet); this.threshold = threshold; } 虽然我可以大致猜测该函数的目标是如何实现的,但我不太理解将该函数定义为“受保护”并将“exampleSet”定义为“超级”的原因。从面向对象设计的角度来看,以这种方式定义它们的一般优势是什
protected SimpleBinaryModel(ExampleSet exampleSet, double threshold) {
super(exampleSet);
this.threshold = threshold;
}
虽然我可以大致猜测该函数的目标是如何实现的,但我不太理解将该函数定义为“受保护”并将“exampleSet”定义为“超级”的原因。从面向对象设计的角度来看,以这种方式定义它们的一般优势是什么
另外,
this.threshold=threshold代码>目标实现?这不是一个函数。它是一个构造函数
super(示例集)
表示基类有一个带有ExampleSet参数的构造函数
和this.threshold=threshold
使用参数threshold
的值初始化当前类的threshold字段这不是一个函数。它是一个构造函数
super(示例集)
表示基类有一个带有ExampleSet参数的构造函数
和this.threshold=threshold
使用参数值初始化当前类的阈值字段threshold
SimpleBinaryModel
是一个构造函数
super(exampleSet)
正在调用超类构造函数。它必须始终是第一行
protected
可由同一包的类和驻留在任何包中的子类访问。SimpleBinaryModel
是一个构造函数
super(exampleSet)
正在调用超类构造函数。它必须始终是第一行
受保护的
可由同一包的类和驻留在任何包中的子类访问
“protected”关键字声明此方法只能由派生类或声明类引用。去读书
“super”正在调用父类的构造函数
this.threshold=threshold正在将输入参数分配给对象实例的本地数据成员
您可能需要阅读一些basi java教程
“protected”关键字声明此方法只能由派生类或声明类引用。去读书
“super”正在调用父类的构造函数
this.threshold=threshold正在将输入参数分配给对象实例的本地数据成员
您可能需要阅读一些basi java教程。受保护的构造函数
意味着其他类无法使用new
实例化对象,通常有另一种方法来构建它们的实例(如。因为它是受保护的,所以子类仍然可以覆盖它。受保护的构造函数意味着其他类不能使用new
实例化对象,通常还有另一种方法来构建它们的实例(如。因为它是受保护的,所以子类仍然可以覆盖它