java中使用两个类的两个数之和
我想把两个数求和。但我在这方面有困难。我不明白为什么我的和总是零 甲级java中使用两个类的两个数之和,java,Java,我想把两个数求和。但我在这方面有困难。我不明白为什么我的和总是零 甲级 public class A { int a=3 ,b=4; public static void main(String[] args) { B obj= new B(); obj.prod(); } } B类 public class B { int a, b; public void prod() { System.out.print(a+b); } } 未初始化的基元字段具有默认值。在in
public class A {
int a=3 ,b=4;
public static void main(String[] args) {
B obj= new B();
obj.prod();
}
}
B类
public class B {
int a, b;
public void prod()
{
System.out.print(a+b);
}
}
未初始化的基元字段具有默认值。在
int
的情况下,该值为0
要将值从类A
传递到B
,应该实现一个包含两个参数的构造函数
public class B {
int a, b;
public B(int a, int b)
{
this.a = a;
this.b = b;
}
public void prod()
{
System.out.print(a+b);
}
}
然后在类A
中,像这样调用B
的构造函数:
public class A {
int a=3 ,b=4;
public static void main(String[] args) {
B obj= new B(a, b);
obj.prod();
}
}
另一种方法是为方法prod()
提供参数:
public void prod(int a, int b)
{
System.out.print(a+b);
}
然后称之为:
public class A {
int a=3 ,b=4;
public static void main(String[] args) {
B obj= new B();
obj.prod(a, b);
}
}
我认为以下代码将帮助您:
public class A {
public static void main(String[] args) {
// create object B, passing aa=3, bb=4 to B's constructor
B objectB = new B(3, 4);
// this will return result as "12"
int result = objectB.prod();
}
}
public class B {
// declare member variables
private final int a;
private final int b;
// B's constructor
public B (int aa, int bb) {
// set values passed in to member variables
this.a = aa;
this.b = bb;
}
public int prod() {
int result = this.a + this.b;
// print result
System.out.print(result + "");
// return result to caller
return result;
}
}
您正在初始化类A中的值。这些值在类B中不可用。请传入类B的构造函数或传递给方法prod()。 您需要修改您的类,如下所示:
public class A {
int a = 3, b = 4;
public static void main(String[] args) {
B obj = new B(a, b);
obj.prod();
}
}
public class B {
int a, b;
b(int a, int b) {
this.a = a;
this.b = b;
}
public void prod() {
System.out.print(a + b);
}
}
//OR
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -
public class A {
int a = 3, b = 4;
public static void main(String[] args) {
B obj = new B();
obj.prod(a, b);
}
}
//CLASS B
public class B {
int a, b;
public void prod(int a, int b) {
System.out.print(a + b);
}
}
您从未在类
b
中初始化a
和b
,因此它们默认设置为0
;而0+0=0
a
和b
类a
和b
类b
与a
无关。未初始化时,基本字段有一个默认值,即0
用于int
sSo如何使用两个类打印7将类a中的值作为参数传递到prod方法次要挑剔:方法名称应与其功能相符。两个数字相加产生的是和,而不是乘积。您的方法应该命名为printSum()
,而不是prod()
。谢谢您的回答。我会在7分钟后完成。谢谢你的回答。真的很有帮助
public class A {
int a = 3, b = 4;
public static void main(String[] args) {
B obj = new B(a, b);
obj.prod();
}
}
public class B {
int a, b;
b(int a, int b) {
this.a = a;
this.b = b;
}
public void prod() {
System.out.print(a + b);
}
}
//OR
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -
public class A {
int a = 3, b = 4;
public static void main(String[] args) {
B obj = new B();
obj.prod(a, b);
}
}
//CLASS B
public class B {
int a, b;
public void prod(int a, int b) {
System.out.print(a + b);
}
}