Java构造函数在不同类中的使用
我正在使用构造函数在不同于构造函数本身的类中初始化对象。构造函数获取一个字符串并返回一个对象实例。但是如何从创建对象的类中获取字符串,并将其传递到定义构造函数的类中呢? 我的项目是这样的: 具有构造函数的类:Java构造函数在不同类中的使用,java,class,constructor,uri,Java,Class,Constructor,Uri,我正在使用构造函数在不同于构造函数本身的类中初始化对象。构造函数获取一个字符串并返回一个对象实例。但是如何从创建对象的类中获取字符串,并将其传递到定义构造函数的类中呢? 我的项目是这样的: 具有构造函数的类: public class UriParserImplementation implements UriParser { @Override public Uri parse() { return null; } public UriParserImplementation
public class UriParserImplementation implements UriParser {
@Override
public Uri parse() {
return null;
}
public UriParserImplementation(String uri) {
}
}
public class UriParserImplementation implements UriParser {
String originalUri;
public UriParserImplementation(String uri) {
originalUri = uri;
}
public parse() {
// you can access originalUri here
}
这是使用带字符串的构造函数创建对象实例的类:
public final class UriParserFactory {
public static UriParser create(String uri) {
UriParser parser = new UriParserImplementation(uri);
return parser;
}
}
我想在UriParserFactory的实现中使用UriParserFactory使用的字符串,但我不知道怎么做
但是如何从创建对象的类中获取字符串,并将其传递到定义构造函数的类中呢
组件需要将字符串保存在字段中,并且需要调用检索字符串的方法。这没有什么神奇之处,你必须自己编写代码。如果我理解正确,你想将
uri
字符串传递给UriParserImplementation
的构造函数,并在创建实例后能够在UriParserImplementation
中访问它吗
如果是这种情况,则需要将属性/字段添加到UriParserImplementation
类中,并在构造函数中对其进行初始化:
public class UriParserImplementation implements UriParser {
@Override
public Uri parse() {
return null;
}
public UriParserImplementation(String uri) {
}
}
public class UriParserImplementation implements UriParser {
String originalUri;
public UriParserImplementation(String uri) {
originalUri = uri;
}
public parse() {
// you can access originalUri here
}
为什么不使用字段?