62,614
社区成员
发帖
与我相关
我的任务
分享
class Calculator{
private int num1;
private int num2;
private char option;
public void initCalculator(int a,int b,char o){
int num1 = a;//这步写错了,正确的写法是num1 = a;下一行是num2 =b;
int num2 = b;
if(o=='+'||o=='-'||o=='*'||o=='/'){
option = o;
}else{
option = '+';
}
}
public void add(){
switch(option){//这里的option就代表initCalculator函数里面的option吗?
case'+':
System.out.println("做加法运算,结果是:"+(num1+num2));
break;
case'-':
System.out.println("做加法运算,结果是:"+(num1-num2));
break;
case'*':
System.out.println("做加法运算,结果是:"+(num1*num2));
break;
case'/':
System.out.println("做加法运算,结果是:"+(num1/num2));
break;
}
}
}
class Demo2
{
public static void main(String[] args)
{ Calculator c = new Calculator();
c.initCalculator(1,5,'s');
c.add();
}
}
class Calculator{
private int num1;
private int num2;
private char option;
public void add(int a,int b,char o){
int num1 = a;//这里写不写前面的int结果都是一样的……
int num2 = b;
option = o;
switch(o){
case'+':
System.out.println("做加法运算,结果是:"+(num1+num2));
break;
case'-':
System.out.println("做加法运算,结果是:"+(num1-num2));
break;
case'*':
System.out.println("做加法运算,结果是:"+(num1*num2));
break;
case'/':
System.out.println("做加法运算,结果是:"+(num1/num2));
break;
default:
System.out.println("做加法运算,结果是:"+(num1+num2));
}
}
}
class Demo3
{
public static void main(String[] args)
{ Calculator c = new Calculator();
c.add(1,20,'*');
}
}
class aaa
{ int num1;
int num;
public void ccc(int b){
num = b;
System.out.println(" b="+b);
}
public void ddd(){
System.out.println(num);
}
}
class Demo7
{
public static void main(String[] args)
{ aaa c = new aaa();
//c.ccc(2); 未标注的时候会输出两行2,标注了以后又会输出0!
c.ddd();
//System.out.println(c.num1);上下两行全标注的时候,这个时候又会输出0,成员变量num1的初始值。
}
}
[/quote]
num的取值是顺着下面的Demo7往下走的,c.ccc(2)等于2下面的c.ddd()里面的num也同样变成了2class aaa
{ int num1;
int num;
public void ccc(int b){
num = b;
System.out.println(" b="+b);
}
public void ddd(){
System.out.println(num);
}
}
class Demo7
{
public static void main(String[] args)
{ aaa c = new aaa();
//c.ccc(2); 未标注的时候会输出两行2,标注了以后又会输出0!
c.ddd();
//System.out.println(c.num1);上下两行全标注的时候,这个时候又会输出0,成员变量num1的初始值。
}
}