没想到接触Java这么多年,今天竟然才发现一直有一个误解
Proteced只能被同一个包内的或者子类的class访问
那么在另一个包的如下代码有问题吗?
Sub sub = new Sub();
sub.setId(9L);
System.out.println(sub.getId());
第二行会出现编译错误
'setId(java.lang.Long)' has protected access in 'package.xxx'
我想,基础知识,和对基础只是设计的理念的深刻理解是一个程序员基本的修养。