private关键字

Student.java

/*
 * 学生类
 *
 * 通过对象直接访问成员变量,会存在数据安全问题
 * 这个时候,我们就想能不能不让外界对象直接访问成员变量呢?
 * 答案:能
 * 如何实现呢?
 *       private关键字
 * private:
 *      是一个修饰符
 *      可以修饰成员变量,也可以修饰成员方法
 *      被private修饰的成员只能在本类中被访问
 *
 *
 * 针对private修饰的成员变量,我们会相应的提供getXxx()和setXxx()用于获取和设置成员变量的值,方法用public修饰
 *
 *
 *
 */
public class Student {
    String name;
    //int age;
    private int age;
    public void setAge(int a)
    {
        if(a<0||a>150)
        {
            System.out.println("你输入的年龄有误");

        }else {
        age=a;
        }
    }
    public int getAge()
    {
        return age;
    }
    public void show() {
        System.out.println("姓名:"+name+"年龄:"+age);
    }

}

StudentDemo.java

/*
 * 学生类的测试类
 */
public class StudentDemo {
    public static void main(String[] args) {
        //使用Student.java文件
        //使用Student类 其实就是使用该类的成员(成员变量和成员方法)
        //创建学生对象
        Student s=new Student();
        s.show();

        s.name="林青霞";
        //s.age=-28;//因为人的年龄不可能是负数,这样会报错
        s.setAge(-20);
        s.getAge();
        s.show();
    }

}

原文地址:https://www.cnblogs.com/long-holiday/p/10244181.html

时间: 2024-10-26 04:26:16

private关键字的相关文章

07_面向对象(成员变量和局部变量区别、类作为形式参数的问题、匿名对象、封装、private关键字、this关键字、构造方法、成员方法、static关键字、静态变量和成员变量、main方法)_02

7:构造方法(掌握)    (1)作用:用于对对象的数据进行初始化    (2)格式:        A:方法名和类名相同        B:没有返回值类型,连void都不能有        C:没有返回值                思考题:构造方法中可不可以有return语句呢?        可以.而是我们写成这个样子就OK了:return;        其实,在任何的void类型的方法的最后你都可以写上:return;    (3)构造方法的注意事项        A:如果我们没写构

48 面向对象private关键字的概述和特点

1 class Demo2_Phone{ 2 3 4 public static void main(String[] args) { 5 6 7 Phone p1 = new Phone(); 8 p1.setPrice(10); 9 System.out.println(p1.getPrice()); 10 } 11 } 12 13 class Phone{ 14 String brand; 15 private int price; 16 17 public void call(){ 18

4.9 private关键字的概述和特点

/* private: 是一个权限修饰符 可以修饰成员变量和成员方法 被其修饰的成员只能在本类中被访问 */ class Demo { // int num = 10; // 用private修饰 private int num = 10; public void show() { System.out.println(num); } private void method() { System.out.println("method"); } public void function

封装、构造方法、private、Static与this关键字、main()_Day07

1:成员变量和局部变量的区别(理解) (1)定义位置区别:      成员变量:定义在类中,方法外.    局部变量:定义在方法中,或者方法声明上.    (2)初始化值的区别:   成员变量:都有默认初始化值. 局部变量:没有默认初始化值.要想使用,必须先赋值. (3)存储位置区别: 成员变量:存储在堆中. 局部变量:存储在栈中. (4)生命周期区别:   成员变量:随着对象的创建而存在.随着对象的消失而消失. 局部变量:随着方法的调用而存在,随着方法调用完毕而消失.更严谨地说当局部变量的作用

private、public、this关键字

private关键字 概念:私有的,一种权限修饰符,用来修饰类的成员 特点:被修饰的成员只能在本类中访问 用法: - 1. private 数据类型 变量名: - 2. private 返回值类型 方法名(参数列表){} public关键字 公共的,访问权限修饰符,用来修饰类,成员变量,成员方法等,被修饰的内容可以在任意类中访问 this关键字 表示本类对象的引用,本质是一个对象 - 特点 // 每一个普通方法都有一个this,谁调用该方法,this就指向谁 - 用法 // this.属性名 /

JavaScript 的新特性:类的 #private 字段

这是什么,如何使用,为什么需要? 一边听"Noise Pollution" -- Portugal. The Man,一边阅读本文简直就是享受 JavaScript 标准的第二阶段(Stage 2)加入了类私有字段.它还没有最终确定,但 JavaScript 标准委员会认为这个特性会被开发出来并最终纳入标准(虽然它可能还会改变) 它的语法(当前)看起来像这样: 1 class Point { 2 **#x;** 3 **#y;** 4 5 constructor(x, y) { 6 *

【PHP面向对象(OOP)编程入门教程】9.封装性(var与public,protected,private的关系)

封装性是面象对象编程中的三大特性之一,封装性就是把对象的属性和服务结合成一个独立的相同单位,并尽可能隐蔽对象的内部细节,包含两个含义: 1. 把对象的全部属性和全部服务结合在一起,形成一个不可分割的独立单位(即对象). 2. 信息隐蔽,即尽可能隐蔽对象的内部细节,对外形成一个边界[或者说形成一道屏障],只保留有限的对外接口使之与外部发生联系. 封装的原则在软件上的反映是:要求使对象以外的部分不能随意存取对象的内部数据(属性),从而有效的避免了外部错误对它的"交叉感染",使软件错误能够局

[java]final关键字、finally关键字与finalize()方法

final关键字: final关键字通常指的是“无法改变的”,使用“无法改变”这样修饰可能出于两个原因:设计或者效率. final可以修饰变量.方法和类. 一.final变量 一个既是static又是final的域只占据一段不能改变的存储空间. 当对对象引用而不是基本类型运用final修饰时,其含义会有一点迷惑.对于基本类型,final使数值恒定不变.而用于对象引用,final使引用恒定不变.一旦引用被初始化指向一个对象,就无法再把它改为指向另一个对象.然而,对象自身却是可以修改的,java并未

JAVA 关键字及其作用解释

1. 访问控制 1) private 私有的 private 关键字是访问控制修饰符,可以应用于类.方法或字段(在类中声明的变量). 只能在声明 private(内部)类.方法或字段的类中引用这些类.方法或字段.在类的外部或者对于子类而言,它们是不可见的. 所有类成员的默认访问范围都是 package 访问,也就是说,除非存在特定的访问控制修饰符,否则,可以从同一个包中的任何类访问类成员. 2) protected 受保护的 protected 关键字是可以应用于类.方法或字段(在类中声明的变量