2011-04-07 126 views
1

我写了一个类,它实现了某种方法,为从我写这类类的特定值提供特定的服务。内部使用类中的方法--Java

现在我想在同一个类中使用此实用程序的另一种方法。

该类使用字符串进行实现,我的意思是它只有私有值是一个字符串。 我们称之为String1

我写的第一个方法,我们称之为Method1获取int,然后对this.String1执行一些操作,并返回一个int。

现在,我试图实现Method2,我需要使用Method1才能获得我想要的。

Method2 afcourse使用this.String1但为了使用此Method1,您需要从这个新的类类型。

我该怎么办?

我希望它很清楚,谢谢。

好了,所以这是代码:

public class IPAddressString { 
private String IpAdress; 

public IPAddressString(int num1, int num2, int num3, int num4) { 
    this.IpAdress = num1 + "." + num2 + "." + num3 + "." + num4; 

} 

public String toString() { 
    return this.IpAdress; 

} 

public boolean equals(IPAddress other) { 
    return ((other.toString()).equals(IpAdress)); 
} 

public int getOctet(int index) { 

    StringBuffer buf = new StringBuffer(); 
    int point = index; 
    int countPoints = 0; 

    for (int i = 0; i <= IpAdress.length() - 1; i++) { 
     if ((IpAdress.charAt(i)) == '.') { 
      countPoints++; 

     } 
     if ((countPoints == point) && IpAdress.charAt(i) != '.') { 
      buf.append(IpAdress.charAt(i)); 
     } 

    } 
    String result = buf.toString(); 
    return Integer.parseInt(result); 
} 


public boolean isPrivateNetwork(){ 


} 

}

我需要isPrivateNetwork使用getOc​​tet。在我们将string1设置为IPAddressString类型之后,isPrivareNetwork将根据getOc​​tet对字符串(string1.getOc​​tet)得到的结果进行处理。我通过编写类使用的字符串是一个字符串类型,而不是IPAddressString类型。它更清楚吗?

+2

它很难保持这一切在短时间内记忆。你能提供任何代码吗? – RoflcoptrException 2011-04-07 19:04:52

+0

根本不清楚。粘贴一些代码。谈论有意义的名称而不是Method1和Method2通常也有帮助, – iluxa 2011-04-07 19:05:24

+0

是的,我会这么做的。 – 2011-04-07 19:05:28

回答

3

那么,为什么你不只是使用:

public boolean isPrivateNetwork(){ 
    int result = getOctet(yourIndex) 
} 
+0

getOc​​tet是一个IPAddressString类型的方法,我在写一个新类, 你可以这样使用:Nir.getOc​​tet(4);当Nir是IPAddressString类型时。有什么我想念的吗? – 2011-04-07 19:15:10

+0

是的,但您的isPrivateNetwork方法属于同一类。所以你也可以使用this.getOc​​tet(yourIndex),但这不是一个区别。 – RoflcoptrException 2011-04-07 19:16:38

+0

哦,我明白了,它会自动地使用我在课堂上使用的IpAdress。我没有想过,我是初学者。谢谢。 – 2011-04-07 19:23:29