类和对象 java 要点总结

# 类和对象

- 成员变量 有默认值0

- 成员方法

- 类名:大驼峰

- rename refactor 改类名

- new 实例化对象

- this 当前对象的引用

- this共有2种使用方式:

  - this.data 访问当前对象的实例成员变量

  - this.func() 访问当前对象的实例成员方法

  - this(参数列表) 访问当前对象的构造方法

  - 此处在当前类当中,调用构造方法A(int a),使用this(x);的方式

- #### 初始化

  1. 默认初始化
  2. 就地初始化

- #### 初始化

- 1. 默认初始化
  2. 就地初始化

#### 构造方法

- 没有返回值,方法名和类名相同 例如public Date(){...}
- 自动构造![image-20240318133510391](C:\Users\lx\AppData\Roaming\Typora\typora-user-images\image-20240318133510391.png)

- 基本上是public修饰
- 只会被调用一次 初始化
- 在一个构造方法内,调用另一个构造方法this()

- 封装:提高安全性

- private 

- default (默认,什么都先不写)

- protected

- public

- public:可以理解为一个人的外貌特征,谁都可以看得到

  default: 对于自己家族中(同一个包中)不是什么秘密,对于其他人来说就是隐私了

  private:只有自己知道,其他人都不知道

- 包:域名逆置 package可查看 src底下为默认包 **为了更好的管理类,把多个类收集在一起成为一组,称为软件包**。

- **包是对类、接口等的封装机制的体现,是一种对类或者接口等的很好的组织方式**,**在同一个工程中允许存在相同名称的类,只要处在不同的包中即可**

- import java.util.Date; import语句导入包

- import java.util.*

- *是通配符,**更建议显式的指定要导入的类名,否则还是容易出现冲突**

- 使用**import static**导入包中静态的方法和字段 static修饰的在方法区,不属于对象,通过对象的引用来访问会警告,应该通过类名来访问,属于类。随着类被加载而创建,类被销毁而销毁。静态的只能是成员变量,不能是局部变量。

- 静态方法不能调用this,不能调用非静态方法比如说main方法。

#### 代码块

- 普通代码块/局部代码块 定义在方法中,不需要条件,直接执行
- 构造代码块/实例代码块 定义在类里面 其次被执行
- 静态代码块 static  最先被执行,类被加载就执行。按定义的顺序。只会执行一次。多个static会合并执行

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/755354.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Vue学习日记 Day7 —— json-server工具、基于VueCli自定义创建项目、postcss插件

一、前一天Vuex总结 1、state作用:存放数据定义:state:{//数据 }使用://放在data下(1)根节点直接访问this.$store.state.数据名(2)模块直接访问this.$store.state.模块名.数据名(3)根节点辅助函数mapState([所需要的数据])(4)模块辅助…

CTF题型 SSTI(1) Flask-SSTI-labs 通关 题记

CTF题型 SSTI(1) Flask-SSTI-labs 通关 题记 文章目录 CTF题型 SSTI(1) Flask-SSTI-labs 通关 题记前记获取键值或下标的方式获取属性的方式 Level 1 no wafLevel 2 bl[\{\{]Level 3 no waf and blindLevel 4 bl[[, ]]获取键值或下标 Level 5 bl[\, "]Level 6 bl[_]Level …

Java安全基础 必备概念理解

Java安全基础 关键概念汇总 文章目录 Java安全基础 关键概念汇总前置知识1.构造器this以及包的使用2.继承3.重写/ 重载 / super4.多态5.区分和equals方法6.toString的使用7.Object的概念8.static,final,代码块static代码块final 9.动态代理10.类的动态加载1)类加载器含义&#…

【教程】APP加固的那些小事情

摘要 APP加固是保护APP代码逻辑的重要手段,通过隐藏、混淆、加密等操作提高软件的逆向成本,降低被破解的几率,保障开发者和用户利益。本文将介绍APP加固常见失败原因及解决方法,以及处理安装出现问题的情况和资源文件加固策略选择…

【InternLM 笔记】OpenXLAB浦源的基本操作

OpenXLab网址 网址:OpenXLab浦源 模型 创建模型 页面右上角选择【创建】然后选择【创建模型】 创建模型的页面如下 感觉页面中的提示信息填写相应的内容,全部填完后点页面下方的【立即创建】完成模型的创建 模型上传 安装所需的工具 apt install …

目标检测——玉米叶感染数据集

一、重要性 首先,玉米作为世界上重要的粮食作物之一,其生长状况直接影响到粮食产量和粮食安全。玉米叶感染是玉米生长过程中常见的病害之一,会导致玉米叶片出现肿胀、皱缩、扭曲变形等症状,严重时甚至可能形成瘤状物。因此&#…

MySQL特殊函数

MySQL提供了一系列特殊函数,用于执行各种操作,包括数学运算、字符串处理、日期和时间计算等。下面是一些常用的MySQL特殊函数及其样例: 1. **数学函数**: - ABS(x):返回x的绝对值。 - 样例:SELECT AB…

plsql如何添加索引?

索引是对表中一列或多列的值进行排序的一种结构,使用索引可快速访问数据库表中的特定信息。如果想按特定职员的姓来查找他或她,则与在表中搜索所有的行相比,索引有助于更快地获取信息。索引的一个主要目的就是加快检索表中数据的方法&#xf…

【LIMS】微服务

目录 一、服务解决方案-Spring Cloud Alibaba1.1选用原因(基于Spring Cloud Alibaba的试用场景)1.2 核心组件使用前期规划 部署 nacos部署 mino使用JavaFreemarker模板引擎,根据XML模板文件生成Word文档使用JavaFlowable 工作流引擎前端 -vue…

Python实现视频转音频、音频转文本加文本实体识别

文章目录 概述必备第三方库视频转音频音频转文字完整代码命名实体识别NER注意点概述 本教程希望可以识别出目前活跃的视频平台(例如抖音、快手等)中视频文案中蕴含的实体信息,首先有两条技术路径: 直接提取视频帧,之后实现逐帧的字幕识别,最后合并为视频文案。 优点:准…

为什么Python语言那么受欢迎呢?

Python语言受到广泛欢迎的原因有很多。首先,让我们来了解一下Python语言的背景和历史。Python是由Guido van Rossum在上世纪90年代初开发的一种高级编程语言。自从他在1989年发布第一个Python解释器以来,Python一直在不断发展和完善。其简洁、易读的语法…

js获取年月日

const date new Date()const options { year: numeric, month: 2-digit, day: 2-digit }const dateString date.toLocaleDateString(zh-CN, options)const [year, month, day] dateString.split(/)console.log(year, month, day) 人工智能学习网站: https://ch…

C++ 中的 Pimpl 惯用法

Pimpl 是一种常见的 C 设计模式,用于隐藏类的实现细节,从而减少编译依赖和提高编译速度。本文将通过一个较为复杂的例子,展示如何使用智能指针(如 std::unique_ptr)来实现 Pimpl 惯用法。 参考: Pimpl 用法

ArcGIS Pro 和 ArcMap 10个不同

ArcGIS Pro 和 ArcMap 都是 ESRI 开发的地理信息系统 (GIS) 软件,但它们在设计、功能和用户体验方面有一些显著的区别。以下是 ArcGIS Pro 和 ArcMap 之间的 10 个主要不同点: 界面和用户体验: ArcGIS Pro 采用了现代化的、基于Ribbon的界面,与 Microsoft Office 应用程序相…

在 Mac 上通过“启动转换助理”安装 Windows 10

在 Mac 上通过“启动转换助理”安装 Windows 10 你可以通过“启动转换”在 Mac 上安装 Microsoft Windows 10,然后在重新启动 Mac 时在 macOS 和 Windows 之间进行切换。 在 Mac 上安装 Windows 10 需要满足的条件 只有在搭载 Intel 处理器的 Mac 上才能使用“启…

Kubernetes 项目整体布局 el-container

整体布局整体布局 你可能会去敲不同的项目,有很多种平台。那么其实都是可以复用的。唯一不同的就是main里面的内容是不同的,边框架子都是相同的。其实框架是不怎么变化的,变化的是main里面。 src/layout/Layout.vue 这里需要新增一个页面Lay…

高效求解!图片转换方法大揭秘,清晰度零损失!

在数字时代,图片转换是我们处理和共享图像时经常面临的任务之一。随着不同平台、应用程序和需求的不断增多,高效的图片转换方法变得至关重要。本文将为您揭秘一系列高效的图片转换方法,确保在转换过程中清晰度零损失。 无论是为了适应不同的…

Docker Desktop 安装 ClickHouse 超级简单教程

Docker desktop 安装 clickhouse 超级简单 文章目录 Docker desktop 安装 clickhouse 超级简单 什么是 Docker ?安装下准备安装Docker配置安装 ClickHouse配置数据库密码DBeaver 测试创建表总结 什么是 Docker ? 下载 Docker desktop Docker Desktop …

三菱FX3U/FX5U的采集方式有哪些?如何快速采集?

在工业自动化领域,PLC(可编程逻辑控制器)扮演着至关重要的角色。三菱FX3U和FX5U作为三菱电机公司推出的两款经典PLC产品,广泛应用于各种工业自动化控制系统中。为了更好地实现对这些PLC设备的数据采集与远程控制,我们引…

链表练习1

链表练习 总体思路就是需要设置虚拟头节点。 1.删完节点记得释放内存。 2.遍历的条件需要时cur->next, 因为cur只是一个虚拟节点。 3.dummyHead指向原链表。确保返回头节点。cur负责移动删除链表结点。 class Solution { public:ListNode* removeElements(ListNode* he…