java学习2

ArratList 集合入门

ArratList 类属于java.util包里面的使用前需要在代码开头添加一下代码

import java.util.ArrayList;

1.集合的长度是可变的,不像数组一样是固定的

2.泛型:限定集合中存储数据的类型

3.集合不能直接存基本数据类型,如果有需求,需要改成对应的包装类

ArrayList类集合的创建

//1.创建一个集合ArrayList<String> list =new ArrayList<>();

 此时的集合对象储存的类型是String,对象名叫 list;

ArrayList类的成员方法

1. boolean add(E e) 方法实现集合添加元素

括号内部填写要添加的元素,返回布尔类型,添加成功返回true,添加失败返回false

2.删除集合内元素

第一种:boolean remove(E e) ,此方法会在集合中找到与括号中删除的元素,若是找到则删除并返回true,否则返回false。

第二种:E remove(int index) 根据索引删除,并返回删除元素,index表示集合中第几个元素

3.修改集合内元素

E set(int index, E e) 方法 根据索引修改元素 返回被覆盖的元素

4.查询集合内元素

E get(int index) 查询 根据索引查询元素并返回

5.获取集合内元素的数量

int size() 获取集合的长度并返回

所有方法使用样例如下:

package test4;import java.util.ArrayList;public class study_AL {public static void main(String[] args) {//1.创建一个集合ArrayList<String> list =new ArrayList<>();//2.添加元素list.add("aaa");list.add("aaa");list.add("bbb");list.add("ccc");System.out.println(list);//3.删除元素//第一种方法list.remove("aaa");System.out.println(list);//第二种方法String ste = list.remove(0);System.out.println(list);System.out.println(ste);//4.修改元素String str= list.set(0,"fff");System.out.println(list);System.out.println(str);//5.查询元素String sss=list.get(0);System.out.println(sss);}
}

运行结果:

[aaa, aaa, bbb, ccc]
[aaa, bbb, ccc]
[bbb, ccc]
aaa
[fff, ccc]
bbb
fff

static修饰变量和方法

static表示静态,是java中的一个修饰符,可以修饰成员变量和成员方法

静态变量

被static修饰的成员变量,叫做静态变量

为什么要有static这个修饰符来修饰变量?

我们知道static是以类加载而加载的,当以这个类创建的多个对象都有共同的特征,则可以使用static这个修饰符来修饰

比如:一个班里有很多的学生,我们定义了一个类描述学生,而这个班里面都有共同一个老师,则老师这个成员变量就可以static来修饰,这样做的好处就是,在今后写代码的过程每创建一个学生对象时没必要重新告诉你的老师是谁

静态方法

被static修饰的方法,叫做静态变量

 

三大类基本特征

工具类的特点

工具类私有化构造方法的原因

工具类不是用来描述某一事物的,不需要构造对象

工具类方法定义为静态的原因

工具类的方法一般操作某个数组等,比如遍历打印数组,求平均值等,这些方法是公用在类里面的,所有用static修饰的

面向对象——继承

继承是面向对象三大特征之一,可以让类跟类之间产生父子关系

继承的作用

可以把多个子类中重复的代码抽取到父类当中,子类可以直接使用,减少代码冗余,提高代码复用性

java继承的特点

子类继承父类的内容

继承后子类的重写方法

继承后子类的构造方法的特点

如果需要父类的有参构造也是用super,继承的样例和重写代码如下:

父类代码

package test6;public class Anlmal {private int age;private String color;public Anlmal() {}public Anlmal(int age, String color) {this.age = age;this.color = color;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public String getColor() {return color;}public void setColor(String color) {this.color = color;}public void eat(String something){System.out.println("在吃"+something);}
}

子类代码:

public class Cat extends Anlmal{public Cat() {}//有参构造调用父类构造方法public Cat(int age, String color) {super(age, color);}public void zhua(){System.out.println("抓老鼠");}@Override//重写构造方法public void eat(String something){System.out.printf("%d岁的%s颜色的猫咪着眼睛侧着头吃%s",getAge(),getColor(),something);System.out.println();}
}

 this.super使用总结

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

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

相关文章

发票是扫码验真好,还是OCR后进行验真好?

随着科技的进步&#xff0c;电子发票的普及使得发票的验真方式也在不断演进。目前&#xff0c;我们常见的发票验真方式主要有两种&#xff1a;一种是扫描发票上的二维码进行验真&#xff0c;另一种是通过OCR&#xff08;Optical Character Recognition&#xff0c;光学字符识别…

国内ip怎么来回切换:操作指南与注意事项

在数字化时代&#xff0c;互联网已经成为我们日常生活、学习和工作中不可或缺的一部分。然而&#xff0c;随着网络应用的不断深化&#xff0c;用户对于网络环境的稳定性和安全性要求也越来越高。其中&#xff0c;IP地址作为网络中的关键标识&#xff0c;其切换与管理显得尤为重…

RDGCN阅读笔记

Relation-Aware Entity Alignment for Heterogeneous Knowledge Graphs 面向异质知识图谱的关系感知实体对齐 Abstract 实体对齐是从不同的知识图(KGs)中链接具有相同真实世界实体的任务&#xff0c;最近被基于嵌入的方法所主导。这种方法通过学习KG表示来工作&#xff0c;以…

基于Spring Boot 3 + Spring Security6 + JWT + Redis实现接口资源鉴权

紧接上一篇文章&#xff0c;基于Spring Boot 3 Spring Security6 JWT Redis实现接口资源鉴权 系列文章指路&#x1f449; 系列文章-基于SpringBoot3创建项目并配置常用的工具和一些常用的类 项目源码&#x1f449; /shijizhe/boot-test 文章目录 1. 修改 UserDetailsServic…

使用hexo框架快速在github上搭建静态博客

今天来说一下使用hexo框架搭建静态博客&#xff0c;玩玩还不错。 我的操作系统 文章目录 一、部署到本地二、新建博客三、更换主题四、部署到github五、其他 一、部署到本地 首先下载好nodejs和git工具&#xff0c;建议直接去清华镜像源下载 node.js git 这中间环境变量的配置…

【精品方案】智慧金融大数据分析平台总体架构方案

以下是部分PPT内容&#xff0c;请您参阅。如需下载完整PPTX文件&#xff0c;请前往星球获取&#xff1a; 1.实现数据共享 通过数据平台实现数据集中&#xff0c;确保金融集团各级部门均可在保证数据隐私和安全的前提下使用数据&#xff0c;充分发挥数据作为企业重要资产的业务价…

milvus knowhere源码编译测试

简介 Knowhere 是 Milvus 的核心向量执行引擎&#xff0c;集成了Faiss、Hnswlib和Annoy等多个向量相似度搜索库。 编译环境 操作系统: Ubuntu 22.04.4 gcc/g:11.4.0 cmake: 3.27.7 安装依赖 apt install build-essential libopenblas-dev libaio-dev python3-dev python…

c语言例题,计算字符串长度,递归思想

c语言中&#xff0c;计算字符串长度算是一个比较经典的题了&#xff0c;而今天我们运用两种不同的求解方法来写出不同的程序来实现计算字符串的功能。 主函数 先看到主函数&#xff0c;主函数中设置了一串7个字符的字符串&#xff0c;而后面接下来定义了两个变量len1和len2&am…

Chatopera 云服务的智能问答引擎实现原理,如何融合 #聊天机器人 技术 #Chatbot #AI #NLP

观看视频 Bilibili: https://www.bilibili.com/video/BV1pZ421q7EH/YouTube: https://www.youtube.com/watch?vx0d1_0HQa8o 内容大纲 提前在浏览器打开网址&#xff1a; Chatopera 云服务&#xff1a;https://bot.chatopera.comChatopera 入门教程&#xff1a;https://dwz…

银狐再起风波:2024税务抽查引战勒索风暴

近日&#xff0c;在日常网络狩猎过程中&#xff0c;亚信安全威胁情报中心的研究专家偶然发现了一个团伙&#xff0c;该团伙不仅在QQ群内散播钓鱼链接&#xff0c;还通过伪造的下载网站推广含有恶意软件的EXE文件。面对这一明显的威胁传播行为&#xff0c;该专家迅速组织了威胁情…

个人偏好测验,职业倾向分析和HR人才测评量表

个人偏好测验&#xff0c;以人的15种需求为理论基础&#xff0c;用来鉴别我们在这15个维度的倾向&#xff0c;从而为分析人格特征、职业倾向提供依据。15种需求理论最早由美国心理学家murray在1938年提出。 个人偏好测验&#xff0c;也叫个人爱好测试&#xff0c;人的需求因子…

网络体系结构概述

目录 1. OSI/RM参考模型1.1. 物理层1.2. 数据链路层1.3. 网络层1.4. 传输层1.5. 会话层1.6. 表示层1.7. 应用层 2. TCP/IP参考模型3. 理解OSI七层模型 网络体系结构是线代网络技术的整体蓝图。 1. OSI/RM参考模型 开放互联参考模型&#xff08;Open System Interconnection/…

备考ICA----Istio实验12---配置双向TLS Istio Ingress Gateway实验

备考ICA----Istio实验12—配置双向TLS Istio Ingress Gateway实验 本实验部分配置延续上个Istio实验11 1. 重新配置secret 重新配置secret使其带有ca证书可以验证客户端证书是否合法 先删除原有secret,再配置新的secret # 删除原tls类型的secret kubectl -n istio-system d…

【Django开发】0到1美多商城项目md教程第4篇:图形验证码,1. 图形验证码接口设计【附代码文档】

美多商城完整教程&#xff08;附代码资料&#xff09;主要内容讲述&#xff1a;欢迎来到美多商城&#xff01;&#xff0c;项目准备。展示用户注册页面&#xff0c;创建用户模块子应用。用户注册业务实现&#xff0c;用户注册前端逻辑。图形验证码&#xff0c;图形验证码接口设…

网安基础2-Sniffer的使用与防范

1. 嗅探器sniffer的工作原理 能捕获经过该网络设备的报文&#xff0c;通过分析网络流量&#xff0c;找出关键信息&#xff0c;解决网络问题。 不同于键盘捕获程序&#xff0c;如keylogger利用中断或钩子技术&#xff0c;Sniffer将网络接口置成适当的模式&#xff0c;如杂收。…

【小黑送书—第十八期】>>让工作自动化起来!无所不能的Python(文末送书)

随着我国企业数字化和信息化的深入&#xff0c;企业对办公自动化的效率和灵活性要求越来越高。Python作为一种开源的软件应用开发方式&#xff0c;通过提供强大丰富的库文件包&#xff0c;极大地简化了应用开发过程&#xff0c;降低了技术门槛。Python开发有哪些优势、挑战以及…

产品经理的进阶之路

点击下载《产品经理的进阶之路》 1. 前言 本文深入剖析了产品经理这一职业从产品专员起步,逐步晋升为产品经理、高级产品经理,直至产品总监的整个职业发展路径。在每个阶段,产品经理都需承担不同的工作职责,展现出独特的职业特点。 2. 产品专员 关键词【产品需求/原型/文…

《QDebug 2024年3月》

一、Qt Widgets 问题交流 1. 二、Qt Quick 问题交流 1.Qt5 ApplicationWindow 不能使用父组件 Window 的 transientParent 属性 ApplicationWindow 使用 transientParent 报错&#xff1a; "ApplicationWindow.transientParent" is not available due to compone…

Python程序设计 多重循环

教学案例六 多重循环 1.n之内的素数 输入n&#xff0c;显示n之内的所有素数 每行显示10个素数 例如&#xff0c;若输入500&#xff0c;结果如图所示 neval(input()) #代码开始 c 0for i in range(2, n1):for j in range(2, i):if i % j 0:breakelse:c 1print("{:5d}…

四年旅程,一路成长——小雨的创作纪念日

四年旅程&#xff0c;一路成长——小雨的创作纪念日 收到来信&#xff0c;回顾与再开始回首起点&#xff0c;初探技术世界持续前行&#xff0c;从坚持到自信今日之感&#xff0c;持续分享与感恩【3.19故事对话】我一定可以&#xff01;“新”认知状态变化感受复盘 朝着未来&…