JAVA封装性

Simulink仿真模块 - Signal Conversion 目录 说明 实例 创建总线信号的连续副本 ​将虚拟总线转换为非虚拟总线​ 将非虚拟总线转换为虚拟总线 将Muxed信号转换为矢量 模块特性 Signal Conversion:将信号转换为新类型,而不改变信号值 在仿真库中的位置为: Simulink / Signal Attributes HDL Coder / Signal Attributes 模型为: 说明 Signal Conversion模块可将信号从一种类型转换为另一种类型。要选择要... 阅读详情

1、封装性的概念
(1)封装性是面向对象思想的三大特征之一
(2)封装就是隐藏实现细节,仅对外提供访问接口。
(3)属性的封装、方法的封装、类的封装、组件的封装、模块化的封装、系统级封装。
2、封装的好处
1、模块化
2、信息隐藏
3、代码重用
4、插件化易于调试
5、具有安全性
3、封装缺点
1、会影响执行效率
4、成员变量与局部变量
(1)在类中的位置不同
成员变量:在类中定义
局部变量:在方法中定义或者方法的参数
(2)在内存中的位置不同
成员变量:在堆内存(成员变量属于对象,对象进堆内存)
局部变量:在栈内存(局部变量属于方法,方法进栈内存)
(3)生命周期不同
成员变量:随着对象的创建而存在,随着对象的销毁而消失。
局部变量:随着方法的调用而存在,随着方法的调用完毕而消失。
(4)初始化不同
成员变量:有默认的初始化值,引用类型默认为null。
局部变量:没有默认的初始化值,必须定义,赋值。然后才能使用。
注意:
局部变量名称可以和成员变量名称一样,在方法中使用的时候,采用就近原则。

	class person{
	private String name; //成员变量在类中定义
	private  int age;//成员变量,在类中定义
	}
	public void run(int len){//参数也是局部变量
	int m= len; //m也是局部变量,局部变量定义在方法中!
	}

构造方法
1、构造方法就是类构造对象时调用的方法,用于对象的初始化工作。
2、构造方法是实例化一个类的对象时,也就是new的时候,最先调用的方法。
构造方法的定义:
构造方法是在类中定义的,构造方法的定义格式:方法名与类名相同,无返回值类型的声明。【不写void】
Dog do个= New Dog(),带括号表示调用了方法,此时调用的方法就是构造方法。

main{
Dog dog = new Dog()
}
class  Dog{
public Dog(){
System.out.println("构造方法执行了")
}

构造方法重载
无参构造方法:
public Dog(){}
带一个参数的构造方法:
public Dog(String name){
this.name= name;
}
带两个参数的构造方法:
public Dog(String name,int age){
this.name=name;
this.age=age;
}
注意:
一个类中,包含构造方法的重载【包含多个构造方法,无参、一个参数、两个参数等】
如果在类中需要相互调用:例如两个参数的构造方法需要调用一个参数的构造方法:

public Dog(String name,int age){
//表示调用自己的 带一个参数的构造方法【语法要求,必须在第一行】
	this(name);
	//this.name=name;
	this.age=age;
}

构造方法总结:
(1)构造方法名与类名相同,没有返回值声明(无 void)
(2)构造方法用于初始化数据(属性)
(3)每一个类中都有一个默认的无参构造方法
(4)如果类中有显示的构造方法,那么默认的构造方法无效
(5)如果类中有显示的构造方法,还想保留默认的构造方法,需要显示的写出来。
(6)构造方法可以有多个,但是参数不一样,成为构造方法的重载
(7)在构造方法中调用另一个构造方法,使用this(……),该句代码必须是第一句。
(8)构造方法之间的调用,必须有出口
(9)给对象初始化数据可以使用构造方法或setter方法,通常,两种方法都会保留。
(10)一个好的编写习惯是要保留默认的构造方法,[为了方便一些框架代码使用反射来创建对象]

this关键字
This关键字是一个很重要的概念,使用this关键字可以完成已下的操作。
调用类中的属性
public void setName(String name){
this.name = name;
}
调用类中的方法或者构造方法
表示当前对象:在方法被调用的时候,哪个对象调用了方法,在方法内的this就表示那个对象
main(){
Dog dog = new Dog();
dog.setName(“旺财”);
}

class Dog{
        private String name;
	    public void setName(String name){
		this.name = name;
		// this.name === dog.name,setName 被main方法中的dog调用了,所有this代表对象dog
	}
}
public void eat(){
	// 在方法中使用this调用类中的其他方法,this可以省略
	System.out.println("我是"+this.getName)
}

Static关键字
作用
(1)使用static关键字修饰一个属性
声明为static的变量实质上就是全局变量。
(2)使用Static关键字修饰一个方法
通常,在一个类中定义一个方法为Static,那就是说,无需本类中的对象即可调用此方法。
(3)使用Static关键字修饰一个类(内部类)
特点
(1)静态变量或方法不属于对象,依赖于类
(2)静态变量是全局变量,生命周期从类被加载后一直到程序结束。
(3)静态变量只存储一份,在静态方法区中存储
(4)静态变量是本类中所有对象共享一份。
(5)不建议使用对象名调用静态变量,建议使用类名调用静态数据。
(6)Static修饰一个方法,那么该方法属于类,不属于对象,直接使用类名调用。
声明为Static的方法有以下几条限制
他们仅能调用其他的Static的方法
他们只能访问Static数据
他们不能以任何方式引用this(表示当前类)或Supper(表示父类)

所有对象共同的属性或方法,那么我们可以定义为Static

2026.3.9:具身智能之GraspNet:Ubuntu24.04安装GraspNet 本文详细介绍了在Ubuntu24.04系统下安装GraspNet具身智能框架的全过程。主要包括:1) 创建Python3.9虚拟环境;2) 安装CUDA12.8和PyTorch2.7.0等基础依赖;3) 编译安装pointnet2、knn和graspnetAPI三个核心组件;4) 修改源码适配新版PyTorch;5) 下载预训练权重并成功运行demo。安装过程中特别提示了可能遇到的报错处理方案,最终在GPU环境下实现了GraspNet的部署运行。整个流程涵盖了从环境配置到项目运行的完整步骤,为具身智能研究者 阅读详情

相关推荐

DTW Barycenter Averaging(DBA)——平均序列求法

DBA该算法是用来求序列数据集SS的一致序列(平均序列)。由Franc-ois Petitjean提出的。目前,该方法求得的平均序列是最准确的。 假设一元组为S={s1,s2,⋯,sn}S={s1,s2,\cdots,sn},当SS中的元素为实数时,很容易求的SS的平均值: avg=s1+s2+⋯+snn(1) avg = \dfrac{s1 +s2+\cdots+sn}{n} \qquad\q

光怪陆离 1万+

JAVA中封装性的概念

一、封装性的概念  用到private关键字来时用 1、封装性是面向对象思想的三大特征之一。 2、封装就是隐藏实现细节,仅对外提供访问接口。   封装有: 属性的封装、方法的封装、类的封装、组件的封装、模块化封装、系统级封装… 二、封装的好处 1、模块化 2、信息隐藏 3、代码重用 4、插件化易于调试 5、具有安全性 •class Person{   pri

m_wise的博客 3314

避开SiC MOSFET驱动设计的3个大坑:电流/电阻/电压配置全指南

本文深入解析SiC MOSFET驱动设计中的三大关键参数:驱动电流、栅极电阻和工作电压,揭示常见设计误区与优化方案。通过实际案例与数据对比,指导工程师避开第三代电力电子半导体应用中的典型陷阱,提升系统可靠性与效率。特别针对驱动电源配置、栅极电阻选型等核心问题提供可落地的解决方案。

weixin_29214199的博客 384

封装的弊端

注意事项 在java中封装一个方法很好,但是没有注释和API,封装有时候会取得适得其反的效果.这提示我们作为一个架构师或者程序员来说,一定要写好注释和API.这样我们的成果才能被别人正确的利用.相反, 作为程序员调用平台或者其他人的方法,必须好看好注释. 反例 今天我调用了一个平台获取时间的方法,只知道这个平台是获取服务器的时间.我用这个时间的毫秒值来生成系统所用的运单号,这个运单号在数据有唯一键...

qq_37375667的博客 1180

基于APDL语言的结构优化设计

同理,二次微分值称为二阶值。通俗地讲优化分析,指的找到一种方案可以满足所有的设计要求,而且所需的支出(如重量,面积,体积,应力,费用等)最小。设计方案的任何方面都是可以优化的,比如说:尺寸(如厚度),形状(如过渡圆角的大小),支撑位置,制造费用,自然频率,材料特性等。完成分析文件的建立后,就可以进行优化分析了,如果在交互方式下进行优化的话,最好先在ANSYS数据库中用分析文件建立参数,其优点有:初始参数可以作为一阶分析方法的起点,且对于优化过程参数在数据库中可以在GUI下进行操作,便于定义优化变量。

m0_73816777的博客 1174

AMDGPU驱动中Doorbell与Event机制简要对比

摘要:AMDGpu驱动中,Doorbell和Event是两种异步通知机制。Doorbell是CPU→GPU的单向硬件通知,通过写MMIO寄存器触发GPU拉取任务,延迟低且无需内核介入,适用于队列任务提交。Event是GPU→CPU的双向同步通知,基于中断和内核事件对象,支持阻塞等待,用于任务完成或异常上报。核心区别在于方向、用途和实现方式:Doorbell侧重任务触发,Event侧重状态反馈。两者配合实现高效的任务下发与完成通知流程。

图形/计算GPU的驱动与虚拟化技术分享园地 1854

java特性(封装介绍)

在上面的例子中,我们通过私有属性和公有方法来实现了封装,从而保护了对象的内部数据,并提供了对外的接口。外部代码无法直接访问对象的内部数据,只能通过提供的接口来访问和修改对象的属性。封装(Encapsulation)是面向对象编程中的一种重要概念,它指的是将数据和行为(方法)组合在一个类中,并对外部隐藏对象的内部细节,只对外暴露必要的接口,以保证对象的安全性和可维护性。高内聚指的是一个模块或类内部的各个方法和属性之间的联系紧密程度,低耦合指的是不同模块或类之间的联系松散程度。

weixin_46004749的博客 417

基于 STM32 单片机的实验室多参数安全监测系统设计与实现

本系统以 STM32F103C8T6 单片机为核心,集成温湿度监测、烟雾检测、气体泄漏报警、人体移动监测等功能模块,通过 OLED 显示屏实时显示数据,并支持 Wi-Fi 远程传输。系统可对实验室异常环境参数(如高温、烟雾、燃气泄漏)及非法入侵实时报警,保障实验室安全。本文从硬件选型、电路设计到软件实现提供了完整的实验室安全监测系统方案,可根据实际需求调整传感器类型和通信方式,适用于科研、教学等场景的环境安全防护。:可增加继电器模块控制通风设备或切断电源,集成 ZigBee 组网实现多实验室联动监测。

weixin_42300449的博客 1285

JAVA——封装性

写在前面,面向对象有三大特征: 1.封装 2.继承 3.多态 今天我们来简单学习一下java的第一大特征封装。 封装 概念 将类的某些信息隐藏在类的内部,不允许外部程序直接访问,而是通过该类提供的方法来对隐藏的信息进行操作和访问。 封装有: 属性的封装、方法的封装、类的封装、组件的封装、模块化封装、系统级封装… 好处 1、模块化 2、信息隐藏 3、代码重用 4、插件化易于调试 5、具有安全性 类的封装 类的封装,就是将类中的属性私有化,即用private关键字来修饰。 私有属性只能在它所

The_onion的博客 945

18、改进的LSTM用于污染物浓度预测

本文探讨了改进的长短期记忆网络(MLSTM)在空气污染预测中的应用,重点分析了其对印度泰米尔纳德邦五个城市(金奈、塞勒姆、哥印拜陀、马杜赖和图蒂科林)的PM2.5、PM10、SO2和NO2四种污染物浓度的预测效果。通过与传统LSTM模型的对比实验,结果显示MLSTM在预测准确性和执行效率方面均优于LSTM。研究结果表明,MLSTM在空气质量预测领域具有较高的应用潜力,可为环境保护和空气质量管理提供有力支持。

j0k1l2m3n的博客 175

模型预测控制 (MPC, Model Predictive Control) 算法详解及案例分析

模型预测控制是一种基于模型的控制策略,通过在线求解一个有限时域的优化问题,预测系统的未来行为,并根据预测结果调整控制输入,以实现系统的稳定性和性能优化。

闲人编程的博客 2936

Java面向对象-封装、继承、多态

--缺点:很难解决非常复杂的业务逻辑,且软件元素之间的“耦合度”非常高,只要其中一环出问题,整个系统都受到影响,导致最终的软件扩展力差。另外,无法达到组件复用。目前新出的语言都是面向对象的,因为人在认识现实世界的时候都是以面向对象的方式,这样更符合人的思维方式。---优点:对于业务逻辑比较简单的程序,可以达到快速开发,前期投入成本较低。注:C语言是纯面向过程、C++是半面向对象、Java是纯面向对象。面向对象:关注对象能完成哪些实际的功能。面向过程:关注具体的实现过程。......

longbin9409的专栏 598

单片机应用案例:ESP32 搭配 BH1750 光强传感器和 Web 服务器

在该应用案例中,我们将使用 ESP32 开发板作为主控制器,BH1750 光强传感器用于采集环境光强度数据,并通过 Web 服务器展示采集到的数据。步骤一:购买材料步骤二:连接硬件步骤三:编写代码我们将使用 Arduino IDE 编写代码,以下是主要代码:// WiFi 设置const char* ssid = “你的 WiFi 名称”;const char* password = “密码”;// Web 服务器实例// BH1750 实例// 获取当前光强度数据。

RlDart的博客 813

Java类的三大特性之一:封装性

阿萨德大奥所

瓦坎达会议室 6776

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

Java的封装性

Java的封装性(Encapsulation)是面向对象编程(OOP)的四大基本特性之一,它指的是将数据(属性)和作用于数据的操作(方法)封装在一起,作为一个独立的单元(即类)。封装隐藏了对象的属性和实现细节,仅对外公开接口,使得用户只能通过接口来访问对象,从而保证了数据的安全性和完整性。

weixin_61468920的博客 682

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

(Java)封装性

文章目录一、封装性二、注意 一、封装性 所谓的封装性就是指对外部不可见 为属性封装:private 属性类型 属性名称; 为方法封装:private 方法返回值 方法名称(参数列表){} 为程序加上封装性: class Person{ private String name; private int age; public void tell(){ Sys...

南淮北安的博客 1080

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

java封装性

/*面向对象的特征一:封装和隐藏—设计思想:该隐藏的隐藏该暴露的暴露 一、问题的引入: 当我们创建一个类的对象以后,我们可以通过“对象.属性”的方式,对对象的属性进行赋值。这里,赋值操作要收到属性的数据类型 和存储范围的限制,除此之外没有其他制约条件。但是在实际的问题中,我们往往需要给属性赋值加入额外的限制条件。这个条件就 不能在属性声明时体现,我们只能通过方法进行限制条件的添加 同时,我们需要避免用户在使用“用户.属性”的方式对属性进行赋值。则需要将属性声明为私有的(private) –>此时针对

over8886的博客 323

Java 封装性详解

封装性是 Java 面向对象编程中的重要概念,它有助于提高代码的质量和可维护性。通过合理使用权限修饰符、构造器以及正确的实例变量赋值顺序,可以更好地实现封装,使代码更加安全、可靠。在实际开发中,我们应该充分利用封装性的优势,遵循良好的编程规范,提高软件的质量。

qq_69304031的博客 1440

Java封装性

一个关于封装性的思考 我们知道,在面向对象语言里都有private这个关键词,表示被这个修饰的属性或者方法,不想被其他的类或对象获取。即便是自身的对象,它也不能轻易获取。 为什么要说轻易呢,在Java中,由于反射机制的存在,实际上也是能获取到private的属性以及值的。 这个私有也只是相对其他类和对象而言,也就是说,在本类中的方法都可以调用自己的私有属性。 这没什么难理解的。 但是可能有一些小伙伴会认为private修饰后,如果创建了一个本类对象,这个对象是无法访问自己的私有属性的,其实这句话对也不对。

qq_41606120的博客 190

java的封装性

java的封装性采用类的方法给类的属性赋值私有方法 内容选自尚硅谷 采用类的方法给类的属性赋值 封装性有着“高内聚,低耦合”的特点,尽量不用 对象.属性 的方法给对象的属性赋值,而采用类的方法给属性赋值,因为采用对象.属性 这种外部的赋值方式,无法对赋的值进行规范,比如说 package com.atguigu.java; public class AnimalTest { public static void main(String[] args) { Animal a = new Animal(

Meloneating的博客 239

Java反射破坏了封装性?

这是本菜鸡面试时被问到的一个问题,觉得挺有意思的,遂打算写一篇文章简单的谈下自己的看法。 在讨论这个问题之前,让我们先来简单复习一下Java反射的知识。 Java 反射 一、类型信息 在回顾Java反射之前,我们先来看一下RTTI(Run-Time Type Identification),运行时类型识别,它能在运行时就能够自动识别每个编译时已知的类型。 理解RTTI在Java中的工作原理,首先需...

To be a great coder 5966

java封装性_java中封装性的简单理解

原标题:java中封装性的简单理解封装性:1.封装性就是保证类内部的定义不被外部可见2.所有属性都必须使用private封装,封装后的属性如果要被外部所访问,要定义相应的setter和getter方法eg:package day1;class Book{private String title;private double price;//定义setter方法public void setTitl...

weixin_36287955的博客 491

Java面向对象:封装性

1 Java面向对象思想 1.1面向对象三大特征 (一)封装性:对外部不可见 (二)继承:扩展类的功能 (三)多态性:方法的重载,对象的多态性 2封装性 1. 类中并不是所有的信息都能让用户可见的,因此隐藏这些信息就很有必要。这就是面向对象对封装的要求。 2. 封装性的目的:保护当前类的某些属性和方法不被外部所见。 3. 封装性的实现:Java的封装是通过priva

Daisy戴的博客 4551

Java三大特性的第一个分水岭——封装性

本篇主要讲解Java面向对象的三大特征之一:封装性。 从设计思想、权限修饰符、作用范围、使用细节代码举例来让大家学会封装性!

知识记录 4131

java的封装性_Java 面向对象的封装性

## 面向对象的封装性 ###### 1、介绍 ####> a)封装性在Java中的体现> 1.方法就是一种封装> 2.关键字private也是一种封装> b)使用private定义变量时要注意,变量只能在本类中访问,在其他类中不能访问,不过可以间接访问private变量,就是定义Setter / Getter方法,可以提高代码安全性> 示例代码↓//a06_面向对象...

weixin_42511157的博客 91

JAVA面试-封装性

简单的认为就是:一个电视机,你不知道里面是有什么东西在运转,但是你可以通过遥控器或者电视表面的按钮来调整电视的分辨率之类的,所以封装性就是指将用户不需要了解的东西封装起来,只提供服务的接口     一、面向对象的三大特征  封装 (Encapsulation)  继承 (Inheritance)  多态 (Polymorphism) 二、封装 1、什么是封装 封装:是指隐藏对象的属性和实...

qq_32868167的博客 747
上一篇: Java中数组的赋值方式
下一篇: 单例模式——Java
JSON_ZJS
博客等级 码龄9年 30粉丝 159原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值