当前位置: 首页 > news >正文

03JAVA基础(方法/类/封装(构造方法))

目录

1.方法

1.1 方法的定义

1.2 方法的重载

 2.类和对象

  3.封装

1. private关键字

2. this关键字

3. 封装

4. 构造方法 


1.方法

        含义: 将具有独立功能的代码块组织成一个整体,具有特殊功能的代码集

        注意:  方法必须先创建才可以使用,需要手动调用执行 

        1.1 方法的定义

      格式: public static void 方法名(参数1){

                        //方法体

                }

       方法的调用: 方法名(参数2);

参数类型位置实例
形参方法定义的参数参数1
实参方法调用的参数参数2

       带返回值方法的格式: public static 数据类型 方法名(参数1){

                                                  return 数据;      

                                          }

       接受方法返回值的类型要与定义数据类型一致

       方法的注意事项:

                1.方法不能嵌套         

                2.void代表物返回值,可以省略return,也可以写,后面后面不加数据

        

        1.2 方法的重载

方法重载:

        多个方法在同一个类

        多个方法具有同一个名字

        多个方法的参数不相同,类型不同或者数量不同

注意: 方法参数的传递过程中

        对基本数据类型,形式参数的改变不影响实际参数的值(存储在栈内存)

        对引用数据类型,形参的改变影响实际参数的值(存储在堆内存)

实例:  public class a(){

                public static void mian(String[] args){

                        int number = 10;

                       System.out.println("调用前"+number); //10

                       change(number)
                       System.out.println("调用后"+number); //10

                }

                public static void change(int number){

                        number +=number;   // 20

                }        

}

 2.类和对象

        类:一类具有共同属性和行为的事物的抽象,确定对象拥有的属性和行为

        类的组成: 属性和行为

               属性: 在类中通过成员变量来体现

               行为: 在类中通过成员方法来体现(去掉static关键字)

        类的定义:

                public class 类名{

                        //成员变量

                        数据类型 变量1;

                        //成员方法

                        方法1;

                }

        对象的使用:

                创建对象格式: 类名 对象名 = new 类名();

                使用成员变量: 对象名.变量名

                使用成员方法: 对象名.方法名()

        

变量解释内存位置生命周期
成员变量类中方法外的变量堆内存随着对象存在而存在
局部变量方法中的变量栈内存随着方法调用而存在

  3.封装

           1. private关键字

             1.是权限修饰符

             2.可以修饰成员(成员变量和成员方法)

             3.作用保护成员不在别的类使用,private修饰只能在本类中使用

     针对private修饰成员变量,要被其它类使用.

             1.提供get变量名()获取变量成员的值

             2.提供set变量名(参数)方法用于设置成员变量的值

           2. this关键字

            this修饰的变量用于代指成员变量

            方法的形参和成员变量同名,如果不加this的变量,指的是形参

            this代表所在类的对象引用

            作用:

                    解决局部变量隐藏成员变量

            

            实例:

                    public class Student{

                          private String name;  // 加this指的是这个name

                          public void setName(String name){

                               this.name = name;

                          }

                    }

         3. 封装

          1.概念:

                 将成员变量隐藏在类的内部,外界无法直接操作

          2.封装原则

                将类的信息隐藏在类内部,不允许外部程序直接访问,通过类提供的方法来实现对隐藏信息的操作和访问成员变量private,提供对应的getXx/setXx()方法

          3.封装好处

                通过方法来控制成员变量的操作,提高了代码的安全性

                把代码用方法进行封装,提高了代码的复用性

        4. 构造方法 

        构造方法是一中特殊的方法

        作用:创建对象

        格式: 

                public class 类名{

                        修饰符 类名 (参数){

                        }

                }

        功能: 完成对象数据的初始化

        注意: 

                1.如果没有定义构造方法,系统会给出一个默认无参构造方法

                2.如果定义了构造方法,系统将不提供默认的构造方法

                3.如果定义了带参数的构造方法,想使用无参构造方法,就必须在写一个无参构造

                4.无论是否使用,都建议手写无参构造方法

相关文章:

03JAVA基础(方法/类/封装(构造方法))

目录 1.方法 1.1 方法的定义 1.2 方法的重载 2.类和对象 3.封装 1. private关键字 2. this关键字 3. 封装 4. 构造方法 1.方法 含义: 将具有独立功能的代码块组织成一个整体,具有特殊功能的代码集 注意: 方法必须先创建才可以使用,需要手动调用执行 1.1 方法的定义 格…...

数据容器的通用操作、字符串大小比较 总结完毕!

1.数据容器的通用操作 1)五类数据容器是否都支持while循环/for循环 五类数据容器都支持for循环遍历 列表、元组、字符串都支持while循环,集合、字典不支持(无法下标索引) 尽管遍历的形式不同,但都支持遍历操作 2&a…...

KAN(Kolmogorov-Arnold Network)的理解 3

系列文章目录 第一部分 KAN的理解——数学背景 第二部分 KAN的理解——网络结构 第三部分 KAN的实践——第一个例程 文章目录 系列文章目录前言KAN 的第一个例程 get started 前言 这里记录我对于KAN的探索过程,每次会尝试理解解释一部分问题。欢迎大家和我一起讨…...

lux和ffmpeg进行下载各大主流自媒体平台视频

1、lux下载,链接:https://pan.baidu.com/s/1WjGbouL3KFTU6LeqZmACpA?pwdagpp 提取码:agpp 2、ffmpeg下载,跟lux放在同一个目录; 3、为lux、ffmpeg设置环境变量; 4、WINR,打开运行&#xff0…...

day25-XML

1.xml 1.1概述【理解】 1.2语法规则【应用】 1.5DTD约束【理解】 1.6schema约束【理解】 1.4xml解析【应用】 概述 xml解析就是从xml中获取到数据 常见的解析思想 DOM(Document Object Model)文档对象模型:就是把文档的各个组成部分看做成对应的对象。 会把xml文件全部加载到…...

Mixly 开启WIFI AP UDP收发数据

一、开发环境 软件:Mixly 2.0在线版 硬件:ESP32-C3(立创实战派) 固件:ESP32C3 Generic(UART) 测试工工具:NetAssist V5.0.1 二、实现功能 ESP32开启WIFI AP,打印接入点IP地址,允许…...

OCR图片转Excel表格:没结构化的弊端

随着OCR技术的不断发展,将表格图片转为excel已不再是难题,但是,目前市面上的程序还大多处于仅能将图片表格转为普通的excel格式阶段,而不能将其结构化,这样就会产生许多的弊端,具体弊端如下: &l…...

查看所用数据库的版本

通过查询 SELECT VERSION();...

U盘感染病毒,不必急于扔掉!教你如何有效清除U盘中的病毒

U盘被感染了只能扔掉吗?随着信息时代的飞速发展,U盘已成为我们日常生活中不可或缺的存储设备。然而,在使用U盘的过程中,我们有时会遇到U盘被病毒感染的情况。面对这一问题,许多人可能会感到恐慌,甚至想要直…...

新手小白也能玩转跨境电商:从零到精通的操作流程

随着全球化的浪潮愈演愈烈,跨境电商已成为众多创业者和企业家的瞩目焦点。然而,对于初涉此领域的新手来说,从零开始构建跨境电商业务可能会面临诸多挑战。本文将为您梳理跨境电商运营的基本操作流程,并指引新手小白如何迈出坚实的…...

川北医学院与爱尔眼科医院集团签署战略合作协议共谋医学发展新篇章

为深入贯彻落实党的二十大精神,统筹校、企、医、政多方资源,服务“健康中国”战略,推动眼健康产业发展,打造国家及区域级眼科医学中心,2024年5月31日,川北医学院与爱尔眼科医院集团在成都举行战略合作协议签…...

利用映射算子打印菱形

文章目录 一、利用RDD完成(一)右半菱形(二)左半菱形(三)完整菱形(四)输出任意大菱形 二、利用Java完成(一)右半菱形(二)左半菱形&…...

亚信安全正式推出5G专网安全测试服务 圆满完成核电客户5G项目落地

近日,亚信安全联合北京触点互动信息技术有限公司成功完成某核电客户5G专网项目,从终端安全,基站,核心网网元,切片安全以及接口安全等重点存在安全风险点进行测试,发现潜藏的安全隐患漏洞,为客户…...

第二十五章CSS中的技巧(导航栏、下拉列表)

1.CSS精灵 1.什么是CSS精灵 英文叫法 CSS sprites,通常被解释为“CSS图像拼合”或“CSS贴图定位”;其实就是把网页中一些背景图片整合到一张图片文件中,再利用css“background-image”, “background-repeat”,“background-position”的组…...

大话设计模式解读01-简单工厂模式

本系列的文章,来介绍编程中的设计模式,介绍的内容主要为《大话设计模式》的读书笔记,并改用C语言来实现(书中使用的是.NET中的C#),本篇来学习第一章,介绍的设计模式是——简单工厂模式。 1 面向对象编程 …...

35python数据分析numpy基础之setdiff1d求两个数组的差集

1 python数据分析numpy基础之setdiff1d求两个数组的差集 python的numpy库的setdiff1d(x,y)函数,表示数组x与y的差,即在x且不在y中的元素,且进行去重排序。 用法 numpy.setdiff1d(ar1, ar2, assume_uniqueFalse)描述 numpy.setdiff1d(ar1,…...

JVM 指针压缩

运用java内存对齐填充,对java内存进行8字节划分,java对象指针映射到每个划分区域上,使得4个字节(32位)表示2^32个地址,从而使4个字节指针映射32G内存空间。 1.为什么进行指针压缩: jvm从32位变…...

时序预测 | Matlab灰色-马尔科夫预测

目录 预测效果基本介绍程序设计参考资料 预测效果 基本介绍 Matlab灰色-马尔科夫预测 灰色马尔科夫预测(Grey-Markov Prediction)是一种用于时间序列预测的方法,它结合了灰色系统理论和马尔科夫链模型。灰色系统理论是一种非参数化的预测方法…...

代码界的奥斯卡:SpringBoot测试的艺术与科学

探索SpringBoot测试的神秘世界,揭秘如何成为代码质量的守护神!从基础环境搭建到高级集成测试,本系列教程带你一步步构建坚不可摧的测试防线。深入JUnit 5的强大功能,学习如何用MockMvc和Testcontainers打造逼真的测试场景。准备好…...

安防监控视频平台LntonCVS视频监控汇聚平台遏制校园暴力保护校园学生安全应用方案

未成年人被誉为祖国的花朵,是我们国家的未来。然而,最近频繁曝出的未成年霸凌事件却引发了社会的广泛关注。这些事件手段残忍,事态恶劣,引发了全社会对如何保护未成年身心健康、规避霸凌事件发生的深刻思考。 为了更好地保障学生的…...

Python | 平均绩点

字符串的概念和特点 字符串既可以使用单引号,也可以使用双引号""来创建 可以使用运算符来拼接字符串,并返回字符串拼接后的结果。 first_name "Tom" last_name "Jerry" full_name first_name " " &quo…...

2024年有什么值得入手的5G长期套餐大流量卡推荐?大流量手机卡入手指南(超4款正规手机卡实测总结)

前言 24年有什么值得入手的5G大流量卡推荐?大流量手机卡入手指南(超4款正规手机卡实测总结) 四大运营商有哪些大流量卡,可电话,非物联网卡 所有卡激活后,均可以在官方app可查、 所有都是优惠长期 5G大流…...

《尚上优选》项目Bug记录

写在前面 本项目为该系列第二个项目,有一些问题如果没有在本文摘录,可以到 《云尚办公》项目 BUG记录 中查找是否有类似的解决方案。 (2024.3.24以下) (P11) 管理端前端node20版本启动报OpenSSL错误 经典问题,把we…...

Flutter 中的 PopupMenuTheme 小部件:全面指南

Flutter 中的 PopupMenuTheme 小部件:全面指南 Flutter 是一个由 Google 开发的跨平台 UI 框架,它允许开发者使用 Dart 语言构建美观、响应式的移动、Web 和桌面应用。Flutter 的 Material 组件库中包含了丰富的 UI 组件,其中 PopupMenuButt…...

uni-app的网络请求库封装及使用(同时支持微信小程序)

其实uni-app中内置的uni.request()已经很强大了,简单且好用。为了让其更好用,同时支持拦截器,支持Promise 写法,特对其进行封装。同时支持H5和小程序环境,更好用啦。文中给出使用示例,可以看到使用变得如此…...

力扣524. 通过删除字母匹配到字典里最长单词

给你一个字符串 s 和一个字符串数组 dictionary ,找出并返回 dictionary 中最长的字符串,该字符串可以通过删除 s 中的某些字符得到。 如果答案不止一个,返回长度最长且字母序最小的字符串。如果答案不存在,则返回空字符串。 示…...

【代码随想录】【算法训练营】【第27天】 [39]组合总和 [40] 组合总和II [131]分割回文串

前言 思路及算法思维,指路 代码随想录。 题目来自 LeetCode。 day26, 休息的周末~ day 27,周一,库存没了,哭死~ 题目详情 [39] 组合总和 题目描述 39 组合总和 解题思路 前提:组合的子集问题&…...

解决 git 命令 Problem with the SSL CA cert (path? access rights?)

/etc/pki/nssdb 错误 运行命令: GIT_CURL_VERBOSE1 git clone git_repo_url 会输出详细错误信息 Cloning into fp_sdk... * Couldnt find host xxx.com in the .netrc file; using defaults * About to connect() to xxx.com port 443 (#0) * Trying 10.44.52.7…...

详解:重庆耶非凡的选品师项目有哪些优势?

在竞争激烈的电商市场中,重庆耶非凡科技有限公司凭借其独特的选品师项目,成功地在众多企业中脱颖而出。这一项目不仅体现了公司对市场趋势的敏锐洞察力,更彰显了其专业的选品能力和对消费者需求的深刻理解。 首先,耶非凡的选品师项…...

DSP28335模块配置模板系列——GPIO配置模板

在自己的电脑上构建出一套模块配置模板,可以大幅节省DSP程序开发时间,从而达到事半功倍的效果。对于初学者,掌握了模块配置,也就能实现大部分的单片机功能。 在DSP28335模块配置模板系列,不仅会给出GPIO、ADC、EQEP、E…...