**用的是sublime,初学
学Java看到成员方法后面可以接收类似public int getSum(int num1,int num2)这样的给了类型的对象,
但是自己编程序的时候写了这样一个:
public class nonsense01{
public static void main(String[] args) {
B p =new B();
p.name = "jack";
p.age = 10;
p.test200(p);
System.out.println("main的p.age="+ p.age);
}
}
class B {
String name;
int age;
public void test200(B p){
p.age = 20000;//修改对象属性
}
}
因为想试试可不可以不创建一个新的class存放person p的信息直接在B里存放属性,试过把test200后面改成其他的都没办法运行,但是B p结果就成功出来了,请问这里是什么原理呢?
在这时候我以为如果在类里加上属性,类里的方法接收对象可以直接填类名,但是
public class MethodParameter01{
public static void main(String[] args) {
int a = 10;
int b = 20;
AA c = new AA();
c.swap(a,b);
System.out.println("a="+a+"\tb="+b);
}
}
class AA{
public void swap(int a ,int b){
System.out.println("a和b交换前的值\na=" + a + "\tb=" +b);
int temp = a;
a = b;
b = temp;
System.out.println("a和b交换后的值\na=" + a + "\tb=" +b);
}
}
如果在这里在A类里添加属性int a,b,把swap后面改成AA a,AA b又会无法运行了,这又是为什么?
对运行还有点模糊,求指教T T