精华内容
下载资源
问答
  • private关键字

    千次阅读 2019-05-13 00:02:04
    (1)private关键字: 是一个权限修饰符. 用于修饰成员变量和成员方法. 被私有化的成员只在本类中有效. (2)javabean/常用于: 将成员变量私有化,对外提供对应的set(),get()方法。提高对数据访问的安全性。 (3)...

    (1)private关键字:

    • 是一个权限修饰符,用于修饰成员变量和成员方法.
    • 私有是针对类,而不是针对对象,也就是说,同一个类的所有的不同的对象之间,可以互相访问别的对象的的私有的成员.
    • 被私有化的成员只在本类中有效.

    (2)javabean/常用于:

    将成员变量私有化,对外提供对应的set(),get()方法。提高对数据访问的安全性。

    (3)私有化测试:
    正常情况下的从本类中调用其他类的方法:

    class Person{
    	String name="Huahudiediedie";
    	int age=19;
    	
    	void talk(){
    		System.out.println("I can speak");
    	}
    }
    
    class PersonDemo{
    	public static void main(String[] args){
    		Person p=new Person();//实例化Person类
    		String n=p.name;
    		int m=p.age;
    		System.out.println(n);		
    		System.out.println(m);
    		p.talk();
    	}
    }
    

    可以正常调用并输出:
    在这里插入图片描述

    当加上private关键字时:

    class Person{
    	private String name="Huahudiediedie";
    	private int age=19;
    	
    	private void talk(){
    		System.out.println("I can speak");
    	}
    }
    
    class PersonDemo{
    	public static void main(String[] args){
    		Person p=new Person();//实例化Person类
    		String n=p.name;
    		int m=p.age;
    		System.out.println(n);		
    		System.out.println(m);
    		p.talk();
    	}
    }
    

    编译会报错,因为其他类中添加了private权限修饰符,所以本类无法访问到。
    在这里插入图片描述

    (4)对外提供对应的set(),get()方法测试:

    class Person{
    	private String name="Huahudiediedie";//成员变量私有
    	public void setName(String n){//public对外提供set,get方法
    		name =n;
    //		return;
    	}
    	public String getName(){
    		return name;
    	}
    	
    	private int age=19;//成员变量私有
    	public void setAge(int  a){//public对外提供set,get方法
    		if(a<0||a>150){
    			System.out.println("年龄不合法");
    		}
    		age =a;	
    //		return;			
    	}
    	public int getAge(){
    
    		return age;
    	}	
    
    	
    	private void talk(){
    		System.out.println("I can speak");
    	}
    }
    
    class PersonDemo{
    	public static void main(String[] args){
    		Person p=new Person();//实例化Person类
    		
    		p.setAge(21);//调用set方法
    		System.out.println(p.getAge());//调用get方法
    	}
    }
    

    成功调用set(),get()方法:
    在这里插入图片描述

    展开全文
  • Java关键字使用:private 关键字

    千次阅读 多人点赞 2020-03-16 10:17:43
    private关键字作用: 在这里不用官方的话来解释,说简单一点就是,当你设置了private 变量,你需要注意两点: 你可以对类中的属性进行更加精确、细化的限制 在类 → 对象实例化实现的时候要注意使用一对setter 和 ...

    private关键字作用:

    在这里不用官方的话来解释,说简单一点就是,当你设置了private 变量,你需要注意两点:

    • 你可以对类中的属性进行更加精确、细化的限制
    • 在类 → 对象实例化实现的时候要注意使用一对setter 和 getter 来修改和提取对象的属性。

    【下面就这两点展开解释】:

    1. 可以对类中的属性进行更加精确、细化的限制

    【先看一下一般方法】
    在这里插入图片描述
    图1 一般方法的类定义和对象实例展示

    可以看到,在对象中我们可以设定对象的属性,但是问题来了,如果我现在在对象的属性中不小心把年龄输成了负数,那么系统编译也会通过,因为只要是 int 类型的数据,在对象产生的时候编译都是不会报错的,但是实际上,年龄是没有负数的,那么怎么解决这个问题呢!!

    【问题实例】
    在这里插入图片描述
    图2 一般方法的类定义和对象实例的局限和漏洞

    【问题解决 → private】

    2. 在类 → 对象实例化实现的时候要注意使用一对setter 和 getter 来修改和提取对象的属性

    在这里插入图片描述
    图3 使用 private 关键字的类定义和对象实例展示

    【可以看到】

    ① private int age 使用了 private 关键字
    ② 相应的要使用 setAge 来设定更加精确和自由的属性规则; “setAge”的格式是一定的,“set” 为小写,使用 private 关键字的属性是“age”,所以“Age”的第一个字母要大写,这是特定的规则。 例如,如果你要对“name”这个属性进行同样的 private 操作,那么,你应该构成 “setName”“getName” 一对方法来进行操作。但是! 布尔型的方式有例外,比如说你设置了一个布尔型的属性 “name”,那么,当你要对他使用 private 关键字的时候,你使用的一对方法名称应该叫做 “setName”“isName” 而不是上文提到的 “getName”

    “setAge” 的相应要求是: 无返回值,有传入参数
    “getAge”的相应要求是: 有返回值,无传入参数,结合第③条,这两条规则也是规定的!!不能改变

    所以,在对象的实例中(也就是箭头指向的部分),不再使用<图1>中简单的 person.age 来进行对象属性的设定和提取,而是 改成了person.setAge() 来设定 / person.getAge() 来提取。这样可以对属性的 age 有更加精细化的规定和设计,而不再局限于 int 属性所规定的范围。

    ================================================

    PS: 如果使用 private 的关键字,而不用setAge和getAge方法,那么在对象中,无法使用age这个属性,换句话说,使用了private关键字这种方法,在对象设定的时候 “对象.age”这种方便快捷的方式会不合法。错误展示如下:
    在这里插入图片描述
    图4 使用 private 关键字的类定义和对象不规范实例展示

    【可以看到】

    右边的红方框中的部分出现了不合法的红色,证明使用 private 的时候,在对象创建的过程中,必须使用 settergetter 来对特定属性进行操作。

    展开全文
  • 一、使用private关键字可以将需要保护的成员变量进行修饰 二、一旦使用了private进行修饰,那么本类当中仍然可以随意访问,但是超出本类范围外的就不能再直接访问了 (private int age超出int范围就不能访问了) ...

    一、使用private关键字可以将需要保护的成员变量进行修饰

    二、一旦使用了private进行修饰,那么本类当中仍然可以随意访问,但是超出本类范围外的就不能再直接访问了   (private int age超出int范围就不能访问了)

    三、间接访问private成员变量,就是定义一对儿getter/setter方法,命名规则getXxx/setXxx

    对于基本类型中的Boolean值,getter方法一定要写成isXxx的形式而setterXxx规则不变

    举例:

     

     

     

     

     

     

     

    展开全文
  • private 关键字的使用

    2021-02-01 00:30:30
    /*private 关键字 ① 是一个权限修饰符 ② 可以修饰成员(成员变量和成员方法) ③ 作用是保护成员不被别的类使用,被 private 修饰的成员只在本类中才能访问 针对 private 修饰的成员变量,如果需要被其他类使用,...

    定义一个学生类,用 private 修饰成员变量

    /*private 关键字
            ① 是一个权限修饰符
            ② 可以修饰成员(成员变量和成员方法)
            ③ 作用是保护成员不被别的类使用,被 private 修饰的成员只在本类中才能访问
    
            针对 private 修饰的成员变量,如果需要被其他类使用,提供相应的操作
            ① 提供  set变量名( 参数 )  方法,用于设置成员变量的值,方法用 public 修饰
            格式:public void set变量名( 数据类型 变量 ){
                        变量名 = 变量;
                     }
            ② 提供  get变量名()  方法,用于获取成员变量的值,方法用 public 修饰
            格式:public 数据类型 get变量名( ){
                        return 变量名;
                    }
         */
    
    public class Student {
        //成员变量
        private String name;
        private int age;
    //成员方法
        //定义 set 方法用于设置成员变量的值
        public void setName(String n){
            name = n;
        }
        public String getName(){
            return name;
        }
    
        public void setAge(int a) {
            //因为年龄不可能是负数,所以用 if 做一个判断
            if (a < 0 || a > 120) {
                System.out.println("你输入的年龄有误");
            } else {
                age = a;
            }
        }
        //定义 get 方法用于获取变量的值
        public int getAge() {
            return age;
        }
    
        //定义一个 output 用于输出 姓名:年龄
        public void output() {
            System.out.println(name + ":" + age);
        }
    }
    

    在测试类中调用 set 方法

    public class StudentDome {
        public static void main(String[] args) {
            //创建对象
            Student s = new Student();
    
            // 调用 set方法给 成员变量赋值
            s.setName("张三");
            s.setAge(20);
            /*因为在 setAge 方法中已经做了判断,所以当 age(年龄) 给的值是 -20 时 控制台就会
            输出  你输入的年龄有误*/
    
            //调用 output 方法
            s.output();
    
            //也可以用输出语句直接输出 s.getName() + ":" + s.getAge()
            System.out.println(s.getName() + ":" + s.getAge());
        }
    }
    
    展开全文
  • Private关键字

    2019-12-02 18:10:35
    Private关键字 Private可以保护数据的安全性,使该数据无法直接访问,但可以使用Setter Getter方法进行间接访问,给数据加上限制条件,保证数据的安全正确。 下面就让我们通过一个实例来体会一下Private关键字的用法...
  • 主要介绍了java private关键字用法实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
  • public protected private关键字 我们知道C++中的类,有三种访问权限(也称作访问控制),它们分别是public、protected、private。 关于这三个关键字理解了下面的框图 访问权限 public protected private 对本...
  • java中 private关键字的作用及使用方法

    千次阅读 多人点赞 2020-12-13 15:24:53
    private 先看一个程序; 创建的类; package demo04private; public class person { String name; int age; public void show(){ System.out.println("我叫"+name+"我几年"+age+"岁了"); } } 创建的对象; ...
  • C++:C++中public protected private关键字用法 笔者这里主要针对C++中public protected private关键字做一个较全面的总结。首先public protected private关键字用于访问控制的,也被称为访问说明符。 主要用途有2种...
  • this关键字 ...private关键字 private的基本概念 私有的,关键字 , 一种访问权限修饰符,用来修饰类的成员 他一般是封装中封装的比较彻底的方式语句。 起到封装的效果 特点 被修饰的成员只能在本类
  • private: 这个关键字代表只对自己内部的成员(或友元)开放,对其他任何外在用户(包括派生类对象)都不开放。 派生类继承来的基类部分的成员的访问权限说明 派生类继承来的基类部分的成员的访问权限受到两个...
  • JAVA中private关键字详解

    千次阅读 2020-06-23 15:37:41
    private关键字 首先定义了一个person类 public class Person { String name ; int age; public void show(){ System.out.println("我的姓名是"+name+"@@@@@@@@@@@"+"我的年龄是"+age); } } 然后调用这个方法 ...
  • private关键字使用实例

    2020-07-19 19:31:39
    解决方案:使用private关键字 一旦使用了private关键字对成员进行了修饰,那么超出了本类范围之外,就不能直接访问了 如果需要使用private修饰的成员变量,可以使用“间接访问”,为private成员变量编写一对儿...
  • private关键字的概述和特点

    千次阅读 2018-01-15 23:46:57
    private关键字的概述和特点 A:人类赋值年龄的问题。 B:private关键字特点 a.是一个权限修饰符。 b.可以修饰成员变量和成员方法。 c.被其修饰的成员变量只能在本类中被访问。 C:案例演示 a.把成员变量用...
  • private关键字能修饰类吗

    千次阅读 2018-01-03 13:38:22
    private关键字只能修饰内部类,不能修饰外部类 例子: public class TestInnerStatic { private static class InnerClass { public static void doSomething() { System.out.println("private Class doSomething...
  • java中public、protected、默认、private关键字
  • 封装和private关键字

    2020-12-03 23:19:11
    private关键字 private关键字特点 是一个权限修饰符 可以修饰成员变量和成员方法 被其修饰的成员只能在本类中被访问 private最常见的应用 成员变量用private修饰 提供对应的getXxx()和setXxx()方法 案例演示 ...
  • 1、如果前面有protected、private、public等关键字,那么其后的所有声明沿用此关键字,直到出现另一个类似的关键字时,才更换访问属性。 2、如果在出现第一个访问域关键字之前还有变量、函数的声明,那么: class类...
  • 练习使用private关键字

    2020-07-19 11:23:29
    对于布尔类型的数据使用关键字时,不是用getxx了,而是要用isxx。 调用
  • 1、private关键字:私有 属于成员变量修饰符,只能成员变量使用,局部变量使用就会报错。不能修饰局部变量。被private修饰的成员变量只能在自己的本类中使用。因此private又被称为权限修饰。 2、private关键字...
  • private 是一个权限修饰符 可以修饰成员变量和成员方法,被其修饰的成员只能在本类中被访问。 权限: 在类中用private修饰的字段,只能在本类和其伴生对象中访问。 在类中用private[this]修饰的字段,只能在本类中...
  • /* 对于基本类型当中的boolean值,Getter方法一定要写成isXxx的形式,而setXxx规则不变。... private String name;//姓名 private int age;//年龄 private boolean male;//是不是爷们儿 public void setMale(...
  • 1.这三个关键字在两种地方会用到,一个是对类的成员变量和成员函数修饰时(比如私有的成员变量,受保护的成员变量·,公有的函数),还有一种是对继承方式的修饰(比如公有继承,保护继承)。 2.这三个关键字在对...
  • private关键字与封装

    2020-03-17 17:04:26
    private关键字与封装 一、private private关键字 就是一个权限关键字 public protected 默认不写 private关键字 表示私有权限 该成员变量或成员函数只能够在类中被访问 外界不可访问 弊端:如果赋予了一个错误的...
  • 如果你在定义一个变量的时候前面加入了private关键字,那么这个关键字在本类中可以随意访问,但是,超出了本类范围之外就不可以直接访问了。 可以使用get/set方法间接访问: get/set方法格式为get/set+变量名(变量...
  • Java的private关键字

    万次阅读 2018-09-16 18:56:40
    private关键字 可以修饰成员变量和成员方法 被其修饰的成员只能在本类中被访问 应用:在定义类时给成员变量赋值private,并提供get和set方法用于外部访问,这样可以提高数据的安全性 public class pritry { ...
  • 解决方案:用priva关键字将需要保护的成员变量进行修饰。 一旦使用了private进行修饰,那么本类当中仍然可以随意访问。 但是!超出了本类范围之外就不能再直接访问了。 间接访问private成员变量,就是定义了...
  • 封装与private关键字

    2020-03-02 18:02:51
    封装与private关键字 private关键字 就是一个权限关键字 public protected 默认不写 private关键字 表示私有权限 该成员变量或成员函数只能够在类中被访问 外界不可访问 setter 修改器 是一个Java当中的规范 主要...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 445,095
精华内容 178,038
关键字:

private关键字