问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

JAVA程序中封装与隐藏是什么意思

发布网友 发布时间:2022-04-22 11:28

我来回答

4个回答

热心网友 时间:2023-10-02 09:56

隐藏就是封装吧。。。。
封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。封装是一种信息隐藏技术,在java中通过关键字private实现封装。什么是封装?封装把对象的所有组成部分组合在一起,封装定义程序如何引用对象的数据,封装实际
  上使用方法将类的数据隐藏起来,控制用户对类的修改和访问数据的程度。
  封装的简单例子:
先来个例子看看;
public class Man
{
//对属性的封装,一个人的姓名,年龄,妻子都是这个对象(人)的私有属性
private String name;
private int age;
private Woman wife;
//对改人对外界提供方法的封装,可以设定妻子,姓名,年龄也可以获得男人的姓名和年龄
public void setWife(Woman wife)
{
this.wife = wife;
}
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
public int getAge()
{
return age;
}
public void setAge(int age)
{
this.age = age;
}
}
public class Woman
{
//属性封装
private String name;
private int age;
private Man husband;
//方法封装
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
public int getAge()
{
return age;
}
public void setAge(int age)
{
this.age = age;
}
public Man getHusband()
{
return husband;
}
public void setHusband(Man husband)
{
this.husband = husband;
}
}
/**
* 仔细看就会发现,Man类没有提供getWife的方法,这是以为男人不想让自己的妻子被外界访问,
*
* 直接下来呢,就是封装可以吧一个对象的属性私有,而提供一些可以被外界访问的属性的方法,
*
* 比如说,name属性,Man和Woman类都有相应的get和set方法,外界都可以通过这些方法访问和修改
*
* 同时对一些改对象不想让外界访问的属性,就不提供其方法,比如说Man的wife属性,就没有get方法
*
* 外界是不能带到Man类的wife属性的
*
*/
上面那例子可能没有突出封装的好处,下面来个超简单的表达下:
public class Show
{
public static void show(String str)
{
System.out.println(str);
}
}
上面就是对 System.out.println();的封装。
调用的时候 :
public class Use
{
public static void main(String[] args)
{
Show.show("封装");
}
}
这样用的时候就不用使:System.out.println("封装");

热心网友 时间:2023-10-02 09:56

封装就是用类来管理属性和方法;隐藏就是把属性或方法声明为私有

热心网友 时间:2023-10-02 09:57

Java中的封装就通过,private public protected default的关键字进行对象与方法的有效范围进行控制。

热心网友 时间:2023-10-02 09:57

封装就是把方法和属性写在一个类里 这就是封装

隐藏的话就是类的特有属性和方法 加private访问修饰符~~~~也是封装内容的特殊部分
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
一文带你看懂新能源汽车充电桩 高等职业教育规划教材:计算机应用基础目录 QBASIC语言学习辅导目录 计算机体系结构 | 第九章:功能部件 法律规定哪几种病不能离婚? 女方有精神病能否离婚 核酸未出结果微信怎么查记录 精通周易的高人来帮我女儿起个好名字 请懂周易的老师帮我家女儿取个名字吧,急切盼望中,谢谢。 谁懂周易,给我女儿起个名字 java里的重写,重载,覆盖的区别? java中 什么是隐藏?什么是重写?二者有何区别? java中 什么叫隐藏 Java将多个sheet展示在一个sheet中?怎么做? 方法隐藏和方法覆盖的区别和用法 C#和Java 方法重写和覆盖隐藏的区别 JAVA成员变量隐藏和方法的覆盖 java 隐藏和 覆盖怎么感觉是一样的?(菜鸟!!在线) 请问java是用什么方式实现继承,覆盖、隐藏的。 Java中隐藏与覆盖的区别 请教个问题,Java中属性的隐藏与方法的覆盖,求详解. Java语言中隐藏,覆盖,重载的含义! 有关java中覆盖和隐藏的问题 java中重载,覆盖和隐藏的区别 语音备忘录能发送几分钟? JAVA多态中的隐藏和覆盖 java中类的覆盖和隐藏的区别 Java中属性的隐藏与方法的覆盖的区别 JAVA方法的覆盖与域的隐藏有何不同? 求个加勒比女海盗1、2、3的链接 心有灵犀是什么意思? 心有灵犀的意思 心有灵犀什么意思? 心有灵犀是什么意思 什么叫心有灵犀? 心有灵犀的意思是什么? 心有灵犀什么意思? 心有灵犀,下句是什么? 心有灵犀的犀什么意思 两个人心有灵犀是为什么? 心有灵犀下一句是什么? 心有灵犀一点通 全诗是什么? 真的有“心有灵犀”吗? “心有灵犀”的近义词有什么? “心有灵犀”真的存在么,有哪些科学解释? 心有灵犀真的存在吗?为什么? 空调制热坏了怎么办 格力空调制冷与制热效果差怎么维修 空调不制热的故障维修 空调制热正常无冷凝水怎样维修