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,打开运行࿰…...
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视频监控汇聚平台遏制校园暴力保护校园学生安全应用方案
未成年人被誉为祖国的花朵,是我们国家的未来。然而,最近频繁曝出的未成年霸凌事件却引发了社会的广泛关注。这些事件手段残忍,事态恶劣,引发了全社会对如何保护未成年身心健康、规避霸凌事件发生的深刻思考。 为了更好地保障学生的…...
MFC内存泄露
1、泄露代码示例 void X::SetApplicationBtn() {CMFCRibbonApplicationButton* pBtn GetApplicationButton();// 获取 Ribbon Bar 指针// 创建自定义按钮CCustomRibbonAppButton* pCustomButton new CCustomRibbonAppButton();pCustomButton->SetImage(IDB_BITMAP_Jdp26)…...
【Oracle】分区表
个人主页:Guiat 归属专栏:Oracle 文章目录 1. 分区表基础概述1.1 分区表的概念与优势1.2 分区类型概览1.3 分区表的工作原理 2. 范围分区 (RANGE Partitioning)2.1 基础范围分区2.1.1 按日期范围分区2.1.2 按数值范围分区 2.2 间隔分区 (INTERVAL Partit…...
是否存在路径(FIFOBB算法)
题目描述 一个具有 n 个顶点e条边的无向图,该图顶点的编号依次为0到n-1且不存在顶点与自身相连的边。请使用FIFOBB算法编写程序,确定是否存在从顶点 source到顶点 destination的路径。 输入 第一行两个整数,分别表示n 和 e 的值(1…...
AI书签管理工具开发全记录(十九):嵌入资源处理
1.前言 📝 在上一篇文章中,我们完成了书签的导入导出功能。本篇文章我们研究如何处理嵌入资源,方便后续将资源打包到一个可执行文件中。 2.embed介绍 🎯 Go 1.16 引入了革命性的 embed 包,彻底改变了静态资源管理的…...
初学 pytest 记录
安装 pip install pytest用例可以是函数也可以是类中的方法 def test_func():print()class TestAdd: # def __init__(self): 在 pytest 中不可以使用__init__方法 # self.cc 12345 pytest.mark.api def test_str(self):res add(1, 2)assert res 12def test_int(self):r…...
10-Oracle 23 ai Vector Search 概述和参数
一、Oracle AI Vector Search 概述 企业和个人都在尝试各种AI,使用客户端或是内部自己搭建集成大模型的终端,加速与大型语言模型(LLM)的结合,同时使用检索增强生成(Retrieval Augmented Generation &#…...
基于SpringBoot在线拍卖系统的设计和实现
摘 要 随着社会的发展,社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。 在线拍卖系统,主要的模块包括管理员;首页、个人中心、用户管理、商品类型管理、拍卖商品管理、历史竞拍管理、竞拍订单…...
Mysql8 忘记密码重置,以及问题解决
1.使用免密登录 找到配置MySQL文件,我的文件路径是/etc/mysql/my.cnf,有的人的是/etc/mysql/mysql.cnf 在里最后加入 skip-grant-tables重启MySQL服务 service mysql restartShutting down MySQL… SUCCESS! Starting MySQL… SUCCESS! 重启成功 2.登…...
在鸿蒙HarmonyOS 5中使用DevEco Studio实现企业微信功能
1. 开发环境准备 安装DevEco Studio 3.1: 从华为开发者官网下载最新版DevEco Studio安装HarmonyOS 5.0 SDK 项目配置: // module.json5 {"module": {"requestPermissions": [{"name": "ohos.permis…...
python爬虫——气象数据爬取
一、导入库与全局配置 python 运行 import json import datetime import time import requests from sqlalchemy import create_engine import csv import pandas as pd作用: 引入数据解析、网络请求、时间处理、数据库操作等所需库。requests:发送 …...
