java private main_JAVA一个类中的main方法为什么可以访问这个类中的私有数据呢?...

classEmplyee{privatestaticlongnextId=10000;privateStringname;//名字privatedoublesalary;//薪水privatelongID;//工号//构造器publicEmplyee(Stringn,doubles){this.name=n;this.s...

class Emplyee{

private static long nextId=10000;

private String name;//名字

private double salary;//薪水

private long ID;//工号

//构造器

public Emplyee(String n,double s){

this.name=n;

this.salary=s;

ID=nextId;

}

//获取信息

public String getName(){

return this.name;

}

public double getSalary(){

return this.salary;

}

public long getId(){

return this.ID;

}

public static long get_nextId(){

return nextId;

}

//添加一个人调用一次

public void setID(){

this.ID=nextId;

nextId++;

}

public static void main(String[] args) {

var people_1=new Emplyee("Leng Meng",5000);

people_1.setID();

System.out.println(people_1.salary);

System.out.println(people_1.getName()+" "+people_1.getSalary()+" "+people_1.getId());

}

为什么main方法中的对象可以直接访问类的私有数据呢?这样岂不是破坏了封装性吗?System.out.println(people_1.salary);这句话为什么可以顺利的通过编译?

展开

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值