java中什么叫对类进行直接操作,而非属性操作,请举个例子
2个回答
展开全部
首先设定类Test
class Test{
public String name;
public int age;
public void setAge(int age){this.age=age}
public void setName(String name){this.name=name}
}
使用的时候
Test t = new Test();//实例化对象
//如下两句叫属性操作
t.setName("ABC");
t.setAge(20);
//如下两句叫直接操作,这种方式应该被杜绝,他破坏了java的封装性
System.out.println("名字:"+t.name);
System.out.println("年龄:"+t.age);
class Test{
public String name;
public int age;
public void setAge(int age){this.age=age}
public void setName(String name){this.name=name}
}
使用的时候
Test t = new Test();//实例化对象
//如下两句叫属性操作
t.setName("ABC");
t.setAge(20);
//如下两句叫直接操作,这种方式应该被杜绝,他破坏了java的封装性
System.out.println("名字:"+t.name);
System.out.println("年龄:"+t.age);
追问
Test t = new Test();//实例化对象
//如下两句叫属性操作
t.setName("ABC");
t.setAge(20);
show(t)
在Test中添加一个public void show(Test test){}方法
如果掉用show方法,那么show(t)中的参数t 和Test t = new Test();中的t是不是同一个对象呢
追答
你是这个意思么
Test t = new Test();
t.show(t);
第二句作为参数的t和第一句实例化的对象t就是一个东西
如果是这样
Test t = new Test();
new Test().show(t);
第二句作为参数的t和第一句实例化的对象t也是一个东西
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询