有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

类Java构造函数在不同类中的用法

我正在使用构造函数在不同于构造函数本身的类中初始化对象。构造函数获取一个字符串并返回一个对象实例。但是如何从创建对象的类中获取字符串,并将其传递到定义构造函数的类中呢? 我的项目是这样的:

具有构造函数的类:

public class UriParserImplementation implements UriParser {

@Override
public Uri parse() {    
    return null;
}
public UriParserImplementation(String uri) {
}
}

这是使用带字符串的构造函数创建对象实例的类:

public final class UriParserFactory {
    public static UriParser create(String uri) {
        UriParser parser = new UriParserImplementation(uri);
        return parser;
    }
}

我想在UriParserFactory的实现中使用UriParserFactory使用的字符串,但我不知道怎么做


共 (2) 个答案

  1. # 1 楼答案

    But how do I get the string from the class creating the object to the class where the constructor is defined?

    组件需要将字符串保存在字段中,并且需要调用检索字符串的方法。这没有什么神奇之处,你必须自己编写代码

  2. # 2 楼答案

    如果我理解正确,您希望将uri字符串传递给UriParserImplementation的构造函数,并能够在创建实例后在UriParserImplementation中访问它吗

    如果是这种情况,则需要向UriParserImplementation类添加一个属性/字段,并在构造函数中对其进行初始化:

    public class UriParserImplementation implements UriParser {
        String originalUri;
    
        public UriParserImplementation(String uri) {
            originalUri = uri;
        }
    
        public parse() {
            // you can access originalUri here
        }