JAVA - 使用来自另一个方法类的方法

标签 java class methods

我有 2 个类(class);第一个有这段代码:

public class Artigo {

private String descricao;
private double preco;
private int stockCorrente;

public Artigo(String descricao, double preco){
    Artigo(descricao, preco, 0);

}
private void Artigo(String descricao, double preco, int stockCorrente){
    this.descricao = descricao;
    if (preco < 0 || stockCorrente < 0) {
        System.out.println("Erro: Valores negativos.");
        System.exit(0);
    } else
        this.preco = preco;
        this.stockCorrente = stockCorrente;
}
public String getDescricao(){
    return descricao;
}
public double getPreco(){
    return preco;
}
public void setPreco(double preco){
        this.preco = preco;
}
public int getStockCorrente(){
    return stockCorrente;
}
public boolean isStockEnough(int nUnits){
    if (stockCorrente < nUnits){
        return false;
    }else{
        return true;
    }
}
public boolean sell(int nUnits){
    if (isStockEnough(nUnits)){
        stockCorrente = stockCorrente - nUnits;
        return true;
    }else{
        return false;
    }
}
public void recharge(int nUnits){
    stockCorrente = nUnits;
}
public boolean equals(Artigo otherProducts){
    return this.descricao.equalsIgnoreCase(otherProducts.descricao);
}
public String toString(){
    return descricao + ", preço: " + preco + ", stock: " + stockCorrente;
}

然后是我的其他类(class):

public class Pack {

private String descricao;
private int nArtigos;
private double DESCONTO;

public Pack(String descricao, double desconto){
    this.descricao = descricao;
    this.DESCONTO = desconto; 
}
public String getDescricao(){
    return descricao;
}   
public int getnArtigos(){
    return nArtigos;    
}
public double getDesconto(){
    return DESCONTO;
}
public int getStockCorrente(){
    return stockCorrente;
}
public boolean equals(Pack otherpacks){
    return this.descricao.equalsIgnoreCase(otherpacks.descricao);
}
public String toString(){
    return descricao + " com os artigos [ " + " ], com desconto de " + DESCONTO + ", com preco de " + "PRECO" + ", com stock corrente de " + "STOCK"   ;
}
public boolean existArtigo(Artigo otherProducts){
}
public boolean addArtigo(Artigo newArtigo){ 
}
public boolean haveStock(int nUnits){   
}
public boolean sell(int nUnits){    
}
public double getPreco(){   
}

在这个类中,所有的方法都是必需的和需要的。 其中大部分是空的,因为我不知道在那里做什么。 我的意思是,我知道该做什么,不知道该怎么做。

请求是:将商品添加到包中,获取每件商品的名称和当前库存。在这里我需要让它们与其他类的方法连接,对吧?但是如何呢?

最佳答案

你的问题是将一个类的数据访问到另一个类,这可以通过使用 get 方法来完成,即使你可以通过保持 set 方法来设置数据。 例如:

class A
{
private int price;

public int getPrice()
{
return price;
}

public void setPrice()
{
this.price=price;
}
}

现在如果我想访问 B 类中的价格数据

class B
{
//create object of class A in any method where you want to access price data
A a=new A();
int price =a.getPrice();
}

关于JAVA - 使用来自另一个方法类的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16410768/

相关文章:

java - 多个数据库的 Hibernate 自动递增字段

CSS 和特异性 - 类 vs id

php - 在 foreach 循环中调用方法和嵌套循环是否明智?

ASP.NET页面生命周期: methods vs Events

java - 如何在 Java 中使用 JSlider 设置标签匹配主要刻度

java - 当我在 Android Studio 中运行我的应用程序时缺少返回语句

c++ - 在不破坏对象的情况下创建对象映射

Java:构建成功但输出为 "user_package.Point@68e26d2e"

即使在定义 equals 之后,Java Contains 方法也会返回 false

java - 我的数组和数组列表 java for android 有什么问题