封装就是把不想或者不该告诉别人的东西隐藏起来,把可以告诉别人的公开。

做法:修改属性的访问权限来限制对属性的访问,并为每一个属性创建一对取值和赋值的方法,用于对这些属性的访问

通过封装,可以在给属性赋值的时候判断值是否合法,增加安全性。

private 私有的

public 公有的

代码:

W.java

public class W{
private String name; //私有属性
public int age; //公有属性
//公有方法,此方法目的是给外类为本类中的私有属性实现赋值操作。
public void Myf(String name){
this.name = name;
}
//公有方法,此方法目的是给外类访问本类中的私有属性实现取值操作。
public String Myr(){
return this.name;
}
}

Test2.java

public class Test2{
public static void main(String[] args){
W Myclass = new W();
//从本类中,可以访问W类中的公有属性或公有方法,但不能直接访问私有属性以及私有方法
Myclass.age = 18;
//如果我们需要访问W类中的私有属性以及私有方法,可以在W类中写一个共有方法然后返回值。
Myclass.Myf("小明");
System.out.println(Myclass.Myr()); //调用取私有属性值的公有方法
System.out.println(Myclass.age); //调用外类的公有属性
}
}

JAVA 理解封装的概念,private私有的,public公有的的更多相关文章

  1. java中封装的概念

    封装(Encapsulation)是类的三大特性之一, 就是将类的状态信息隐藏在类的内部,不允许外部程序直接访问, 而是通过该类提供的方法来实现对隐藏信息的操作和访问. 简而言之,就是隐藏内部实现,提 ...

  2. Java基础之理解封装,继承,多态三大特性

    目录 封装 继承 多态 封装 封装隐藏了类的内部实现机制,可以在不影响使用的情况下改变类的内部结构,同时也保护了数据.对外界而已它的内部细节是隐藏的,暴露给外界的只是它的访问方法. 代码理解 publ ...

  3. 087 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 01 封装的概念和特点

    087 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 01 封装的概念和特点 本文知识点:封装的概念和特点 说明:因为时间紧张,本人写博客过程中只是对 ...

  4. Java IO 理解流的概念

    Java IO 理解流的概念 @author ixenos 在理解流时首先理解以下概念 1.流的来源和去向一般在构造器指出 2.方法中的形参一般是将流输出到某个位置,读取(INPUT)流从流读出数据( ...

  5. java封装性之private

    public class TestDemo{ public static void main(String args[]){ Person perA= new Person(); perA.setNa ...

  6. java 理解java的三大特性之封装

    使用封装有三大好处: 1.良好的封装能够减少耦合. 2.类内部的结构可以自由修改. 3.可以对成员进行更精确的控制. 4.隐藏信息,实现细节. public class Wife { private ...

  7. Java面向对象----封装概念

    封装 信息隐藏,隐藏对象的细节 访问修饰符 public private protected 默认 属性封装的实现 方法封装的目的(隐藏方法实现细节) package com.tanlei.newer ...

  8. Java面向对象封装和继承

    面向对象 什么是面向过程.面向对象? 面向过程与面向对象都是我们编程中,编写程序的一种思维方式. 面向过程的程序设计方式,是遇到一件事时,思考“我该怎么做”,然后一步步实现的过程.例如:公司打扫卫生( ...

  9. Java之封装特性

    Java中的三大特性:继承,封装,多态: 其中封装概念:封装是把过程和数据包围起来,对数据的访问只能通过已定义的接口. 面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治.封装的 对象 ...

随机推荐

  1. Python 基础语法(二)

    Python 基础语法(二) --------------------------------------------接 Python 基础语法(一) ------------------------ ...

  2. thinkphp3.2 学习

    http://www.tuicool.com/articles/nQFnQrR 1,sublime text 增强插件 右键可以打开文件目录 http://www.w3cfuns.com/notes/ ...

  3. c++文件操作相关

    file operation API functions HANDLE CreateFile(lpFileName,dwDesiredAccess,dwShareMode,lpSecurityAttr ...

  4. about java techelogly

    https://docs.oracle.com/javase/tutorial/getStarted/intro/definition.html Differences between Java EE ...

  5. vim配置及插件安装管理(超级详细)[转]

    1 写在前面   Linux下编程一直被诟病的一点是: 没有一个好用的IDE, 但是听说Linux牛人, 黑客之类的也都不用IDE. 但是对我等从Windows平台转移过来的Coder来说, 一个好用 ...

  6. PostgreSQL9.6新功能

    PostgreSQL是世界上最先进的开源数据库,9.6最新版本由PostgreSQL全球开发者今天发布. 此版本将允许用户纵向扩展(scale-up)和横向扩展(scale-out)来提高数据库的查询 ...

  7. nmap与ntop

    http://blog.csdn.net/aspirationflow/article/details/7694274

  8. js添加事件通用方法

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  9. Oracle查找表的外键引用关系

    Oracle查找表的外键引用关系 select t1.table_name, t2.table_name as "TABLE_NAME(R)", t1.constraint_nam ...

  10. BI案例:某通信企业综合报表和决策分析系统实施案例

    业务需求 某家位列国内五大电信运营商之列的通信公司(以下简称“通信公司”)在多年的运营过程中,积累了大量的业务数据,分散在各个运营系统中(计费系统.九七工程.网管系统等).这些系统主要是面向公司的日常 ...