黑马程序员技术交流社区

标题: 看看红色的地方有public 跟没有的区别 [打印本页]

作者: 惠晖    时间: 2012-10-30 13:19
标题: 看看红色的地方有public 跟没有的区别
本帖最后由 惠晖 于 2012-11-1 13:52 编辑

class Person
{
        private int age;
        public void setAge(int a)
        {
               
                if (a>0 && a<130)
                {
                        age=a;
                        speak();
                }
                else
                        System.out.println("feifaage");

        }
        public int getAge()
        {
                return age ;
        }
         public void speak()
        {
                System.out.println(age);
        }
}
class PersonDemo
{
        public static void main(String []args)
        {
                Person p =new Person();
                p.setAge(20);

        }
}
作者: 惠晖    时间: 2012-10-30 13:21
class Person
{
        private int age;
        public void setAge(int a)
        {
               
                if (a>0 && a<130)
                {
                        age=a;
                        speak();
                }
                else
                        System.out.println("feifaage");

        }
        public int getAge()
        {
                return age ;
        }
     {:soso_e117:}    public void speak()        这里有pubilc 跟没有的区别是什么啊
        {
                System.out.println(age);
        }
}
class PersonDemo
{
        public static void main(String []args)
        {
                Person p =new Person();
                p.setAge(20);

        }
}

作者: 高志鹏    时间: 2012-10-30 13:38
public允许任何其他类访问
无修饰符的情况姑且称为default,访问范围是package,就是同一个包中的类可访问
protected 子类可访问
private 自己的类能访问

public是修饰符,用来限制权限的。后面学到包了你就会更深刻的理解public修饰的意义了。
作者: 郁闷    时间: 2012-10-30 14:11
你那个地方没有写public也是可以外部创建对象调用 默认的权限
如果你方法上没有声明权限修饰符的话就是默认权限
不知道我说的对不起我也是刚学
作者: 王豪    时间: 2012-10-30 16:26
我是这么理解的,说的不对还请指正,
去掉 public ,就是系统默认权限 (default)。 在同一个包中,能访问到默认权限,写不写都可以编译通过的
作者: 杨志男    时间: 2012-10-30 17:29
各种访问修饰符的访问限制
                      public     protected     默认的     private
同一个类中      可以       可以            可以        可以
同一个包中      可以       可以            可以        不可以
子类中            可以       可以            不可以      不可以
不同包中         可以       不可以         不可以     不可以
不管它们修饰的是类、变量、还是方法,一般都遵循这个限制进行创建对象或被调用




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2