首页 > 编程语言 >JavaSE--封装

JavaSE--封装

时间:2023-08-09 10:26:37浏览次数:47  
标签:set 封装 get -- static JavaSE 方法 public

一、封装概念及作用

1、封装

  现实生活中很多都是封装的,例如手机、笔记本电脑......外部有一个壳子保护内部的部件,保证内部的部件是安全的

  封装之后对于我们使用者来说不需要了解内部的结构和关心内部的复杂,只需要使用就可以

2、封装的作用

  • 保证内部结构的安全
  • 屏蔽复杂,暴露简单

二、怎么封装

  不在对外暴露复杂的数据,封装起来

  对外只提供简单的操作入口

  • 第一步:属性私有化(使用private关键字
  • 第二步:对外提供set和get方法,外部程序只能通过set修改,get获取(可以在set方法中设立关卡保证数据的安全性)
public class Person{
    // private私有之后,该数据只能在本类中访问
    private int age;
    // 对外提供简单入口,外部程序只能使用以下方法访问
    // 需要有专门方法来完成读(get)
    // 专门的方法来完成写(set)
    
    // get、set方法
    public int getAge(){
        return age;
    }
    public void setAge(int nianLiang){
        age = nianLiang;
    }
    /*
        注意:Java开发规范要求,set和get方法必须满足以下格式
        public 返回值类型 get+属性名首字母大写(无参){
            return xxx;  
        }
        public void set+属性名首字母大写(1个参数){
            xxx = 参数;  
        }
    */
    
}
// set方法这个位置上设置关卡
public void setAge(int nianLiang){
    if(nianLiang < 0 || nianLiang > 150){
        System.out.println("年龄不符合要求");
        return;
    }
    age = nianLiang;
}

三、实例方法

// 带有static的方法、不带static的方法该怎么调用
// 带有static的方法调用

public class MethodTest{
    public static void main(String[] args){
        // 通过“类名.”的方式
        MethodTest.doSome();
        
        // 通过“引用.”的方式
        MethodTest mt = new MethodTest();
        mt.doOther();
    }
    // 带有static
    public static void doSome(){
        System.out.println("do Some");
    }
    // 不带static,这样的方法被称为实例方法(对象方法,对象级别的方法)
    public void doOther(){
        
    }
    // 实例相关的都需要先new对象,通过“引用.”的方式调用
}

 

标签:set,封装,get,--,static,JavaSE,方法,public
From: https://www.cnblogs.com/hyy-0/p/17608776.html

相关文章

  • Android13冻结进程分析:如何提高设备性能和用户体验
    Android13冻结进程分析:如何提高设备性能和用户体验本文介绍了Android13中的冻结进程功能,它是一种重要的资源管理策略,可以提高系统性能和稳定性,同时最大限度地节省设备的资源和电池消耗。文章讨论了如何合理分配资源,包括CPU、内存等,以提高设备性能和用户体验。此外,文章还提到了......
  • TSINGSEE青犀视频监控汇聚平台EasyCVR视频分享页面WebRTC流地址播放不了是什么原因?
    开源EasyDarwin视频监控TSINGSEE青犀视频平台EasyCVR能在复杂的网络环境中,将分散的各类视频资源进行统一汇聚、整合、集中管理,在视频监控播放上,TSINGSEE青犀视频安防监控汇聚平台可支持1、4、9、16个画面窗口播放,可同时播放多路视频流,也能支持视频定时轮播。视频监控汇聚平台EasyC......
  • 在最新更新的 Windows 系统中使用 .net 程序调用一些 https 接口时出现错误:请求被中止
    这是因为出于安全原因,新更新的系统中会默认禁用一些已经过时不安全的加密协议如:SSL3.0、TLS1.0、TLS1.1等但并不是所有接口服务器都已经更新支持了更新的协议所以在确认安全的情况下,可以将这些旧的协议再次启用,以达到兼容旧接口调用的目的方法1:注意:这个修改会在系统全局......
  • rocky linux:编译安装python3.11.4(rocky linux 9.2)
    一,查看现有的版本:1,本地版本[root@img~]#python--versionPython3.9.162,现在的最新版本:访问官网:https://www.python.org/如图:可以看到线上的最新版本是3.11.4 二,编译/安装:1,下载:先复制下载地址2,从服务器用wget命令下载:[root@imgpython]#wgethttp......
  • 哈哈哈
    importxlrdexcelFileName="/Users/toby/Desktop/Python/testFile.xls"sql1Name="sql1.sql"sql2Name="sql2.sql"readfile=xlrd.open_workbook(excelFileName)#print(readfile)sheetNamesList=readfile.sheet_names()#pri......
  • python:升级pip版本(Python 3.11.4)
    一,查看当前pip的版本:[[email protected]]#pip--versionpip23.1.2from/usr/local/soft/python3.11.4/lib/python3.11/site-packages/pip(python3.11)二,升级pip:[[email protected]]#python3-mpipinstall--upgradepipLookinginindexes:http://m......
  • JavaSE--继承
    一、继承extends1、继承的作用  基本作用:子类继承父类,代码可以得到复用  主要作用:因为有了继承关系,才有了后期的方法覆盖和多态机制2、继承的语法结构class类名extends父类名{类体;}//使用继承机制来解决代码复用问题。//继承也是存在缺点的:耦合度高,父类修......
  • win11首次开机不联网创建本地账户
    一、开机后进入到欢迎界面按Shift+F10,打开CMD.exe,如果是笔记本可能需要按Fn+Shift+F10二、输入命令oobe\bypassnro.cmd然后系统会自动重启,重启之后注册界面就会显示离线建立账户的入口......
  • 使用MyEclipse如何部署Descriptor (XML)编辑器?
    Descriptor(XML)Editor编辑器包含了高级的XML编辑功能,在本文中您将了解到这些编辑功能、WebXML编辑等,此功能包含在MyEclipse中可用。MyEclipsev2023.1.2离线版下载MyEclipse技术交流群:742336981欢迎一起进群讨论1.WebXML编辑器MyEclipse WebXML编辑器包括高级XML编......
  • python:升级setuptools的版本(Python 3.11.4)
    一,查看当前setuptools的版本:[[email protected]]#python3-mpipshowsetuptoolsName:setuptoolsVersion:65.5.0Summary:Easilydownload,build,install,upgrade,anduninstallPythonpackagesHome-page:https://github.com/pypa/setuptoolsAuthor:Py......