Java的Protected

没想到接触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'

我想,基础知识,和对基础只是设计的理念的深刻理解是一个程序员基本的修养。

posted @ 2017-03-06 16:05  栖息之鹰  阅读(258)  评论(0编辑  收藏  举报