A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© yangshang1 中级黑马   /  2012-4-5 18:55  /  2459 人查看  /  8 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文


public class descroder {
   public static void main(String[] args) {
        T t=new T();
        System.out.println(t.name);//z怎么访问不到
}
}
class T
{
        private String name="12";
}

8 个回复

倒序浏览
private 只能是自己类里看见,。。比如T类中才可见,所以在descroder类中 无法通过创建一个T类的对象来直接访问T类的私有变量
回复 使用道具 举报
原理:私有只在本类访问在访问得到
public class descroder {
   public static void main(String[] args) {
        T t=new T();
        System.out.println(t.name);//z怎么访问不到
}
}
class T
{
        private String name="12";//本类成员变量加了权限修饰符private,所以在在另一个类会访问中不到
}
下面的就可以访问的到。


public class descroder {
   public static void main(String[] args) {
        T t=new T();
        System.out.println(t.name);//z怎么访问不到
}
}
class T
{
       String name="12";
}
回复 使用道具 举报
private 是一个修饰符 私有化  经过private修饰后 只能在此对象内部调用
回复 使用道具 举报
private 是一个私有化修饰符 .
回复 使用道具 举报
private修饰符之所以说他是私有的,因为只能在本类中被访问,可以通过在本类中建立非静态函数对private修饰的成员访问,然后在其他类中通过建立对象调用该方法。而且被静态修饰的成员也是不可以被对象直接调用的。
eg:
class Person
{
        int age = 30;
        private String name;
        static int id = 10086;
       
        Person(String name)
        {
                this.name = name;
               
        }
        public String getname()
        {
                return this.name;
        }
}
class P1

{
        public static void main(String[] args)
        {
                Person p = new Person("Lixiao");
                System.out.println(p.age);
                System.out.println(p.getname());
                System.out.println(Person.id);
               
        }
}
result:
30
Lixiao
10086

回复 使用道具 举报
private 是一个私有化修饰符 .私有是很小的权限,也就 是我们说的封装的时候把不需要给别人透漏的东西给隐藏起来,所以私有之后都要给出访问方式。比如说。
        private String name;//私有化后,下面给出访问的方式。一般我们习惯用是set跟get,你看到后面的视频就知道拉~~
        Person(String name)
        {
                this.name = name;
               
        }
        public String getname()
        {
                return this.name;
        }
}
回复 使用道具 举报
public class descroder
{
    public static void main(String[] args)
      {
         T t=new T();
         System.out.println(t.getName());//l类中的私有成员即使他的子类也无权访问,但可以在但可以用公共成员方法来访问!
    }
}
class T
{
         private String name="12";
        public string getName()
            {
               return this.name;
                }

}
回复 使用道具 举报

public class descroder {
   public static void main(String[] args) {
        T t=new T();
        System.out.println(t.getName());//此处使用t.getName();访问。
}
}
class T
{
        private String name="12";//此时使用private将 成员变量 name私有化,只能在本类中访问,一般私有之后需要提供一个公共的成员方法以便其他类访问该私有成员。
        public String getName()
        {
                return name;
        }
}
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马