JAVA出现x可以在Point中访问private是什么意思 高手进

本文解答了一个关于Java中如何正确访问Point类内的私有变量x和y的问题。建议使用getter和setter方法代替直接访问,以确保封装性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

JAVA出现x可以在Point中访问private是什么意思 高手进

class Point{
private int x;
private int y;
public Point(int x,int y){
this.x=x;
this.y=y; 
}
public void move(int xSet,int ySet){
this.x+=xSet;
this.y+=ySet;
}
}
public class Test1{
public static void main(String[]args){
Point myP=new Point(10,10);
System.out.println("Point:x="+myP.x+"y="+myP.y+"\n");
myP.move(10,10);
System.out.println("Point:x="+myP.x+"y="+myP.y+"\n");
}
}

错误指令:
x ,y可以在point中访问private该怎么解决
收起
ljk_1125  |  浏览 1565 次   2010-07-24 12:54  |举报
2010-07-24 13:02 最佳答案
因为xy是private变量,你需要加上设置和读取的方法:
public int getX(){
    return this.x;
}
public void setX(int s){
    this.x = x;
}
然后从外部访问的时候只能通过调用getX()和setX来读取和写入。y的你自己写一下,当作作业。

System.out.println("Point:x=" + myP.getX() + "y=" + myP.getY() + "\n");
zhaoyucheng326 | 2012-10-27 13:36
为啥我加了setter也不好使?...不是可以通过构造方法初始化的嘛? 回复

其他回答

拉取方式
梅丽莎毛军曹    |  2010-07-24 19:44
评论 
0  0
LS回答正解
结贴吧
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值