导图社区 高级语言Java部分概念
这是一篇关于高级语言Java部分概念的思维导图,主要内容包括:表达式,异常处理,自动类型转换,关键字,循环,修饰权限,函数,数组,泛型,变量,生成对象后,接口,类;Java语言是一种非常常见的语言,也是一种非常常用的语言;使用Java语言可以进行各种开发,包括大数据的分析计算在内的很多工程都是通过Java语言完成的。
编辑于2024-12-24 13:21:14数据结构是计算机存储、组织数据的方式,它旨在实现高效的数据访问和修改。精心选择的数据结构可以带来更高运行或存储效率的算法,正如合适的工具能极大提升工作效率,它是构建高效、稳定软件系统的基石。
计算机网络是指将位于不同地理位置、具有独立功能的多台计算机及其外部设备,通过通信线路(如光纤、双绞线、无线电磁波等)和网络设备(如路由器、交换机)连接起来,在网络操作系统、管理软件及通信协议的管理和协调下,实现信息传递和资源共享的互联系统。
马克思主义基本原理是一个严密而完整的科学理论体系,由伟大的思想家卡尔·马克思和弗里德里希·恩格斯在19世纪创立。它深刻揭示了人类社会发展的一般规律,为我们认识世界和改造世界提供了强大的思想武器。
想了解马克思主义国家学说的核心经典?这份书单不容错过!马克思、恩格斯和列宁的《哥达纲领批判》等著作构建了科学社会主义的理论基石:《资本论》系统阐述剩余价值学说,《法兰西内战》总结巴黎公社经验,《国家与革命》捍卫马克思主义国家学说,《帝国主义是资本主义的最高阶段》揭示帝国主义本质这些经典既包含无产阶级政党的首个纲领,也首次系统阐述历史唯物主义,更创新发展了社会主义革命理论,是理解马克思主义国家学说的必读之作。
旧民主主义革命以三民主义为纲领,反帝反封建却未触及私有制新民主主义革命在马克思主义指引下,联合无产阶级彻底推翻压迫,为社会主义革命铺路资本主义社会向社会主义社会的过渡,核心是反对资本主义私有制,最终建立无产阶级主导的新社会三大革命目标层层递进,共同推动中国从分裂走向统一,从剥削走向平等。
揭秘出租车数据背后的城市脉搏!本项目基于Spark和MLlib技术,从时空双维度解析出租车订单数据:先通过探索性分析挖掘订单规律(如每小时/周/月趋势),再构建线性回归和随机森林模型预测车费(含降雪、湿度特征)同时利用Spark SQL和GeoPandas绘制机场车流热力图,实现从数据预处理(读取、清洗)到模型评估(统计可视化)的全流程闭环,为城市交通规划提供数据洞察。
社区模板帮助中心,点此进入>>
数据结构是计算机存储、组织数据的方式,它旨在实现高效的数据访问和修改。精心选择的数据结构可以带来更高运行或存储效率的算法,正如合适的工具能极大提升工作效率,它是构建高效、稳定软件系统的基石。
计算机网络是指将位于不同地理位置、具有独立功能的多台计算机及其外部设备,通过通信线路(如光纤、双绞线、无线电磁波等)和网络设备(如路由器、交换机)连接起来,在网络操作系统、管理软件及通信协议的管理和协调下,实现信息传递和资源共享的互联系统。
马克思主义基本原理是一个严密而完整的科学理论体系,由伟大的思想家卡尔·马克思和弗里德里希·恩格斯在19世纪创立。它深刻揭示了人类社会发展的一般规律,为我们认识世界和改造世界提供了强大的思想武器。
想了解马克思主义国家学说的核心经典?这份书单不容错过!马克思、恩格斯和列宁的《哥达纲领批判》等著作构建了科学社会主义的理论基石:《资本论》系统阐述剩余价值学说,《法兰西内战》总结巴黎公社经验,《国家与革命》捍卫马克思主义国家学说,《帝国主义是资本主义的最高阶段》揭示帝国主义本质这些经典既包含无产阶级政党的首个纲领,也首次系统阐述历史唯物主义,更创新发展了社会主义革命理论,是理解马克思主义国家学说的必读之作。
旧民主主义革命以三民主义为纲领,反帝反封建却未触及私有制新民主主义革命在马克思主义指引下,联合无产阶级彻底推翻压迫,为社会主义革命铺路资本主义社会向社会主义社会的过渡,核心是反对资本主义私有制,最终建立无产阶级主导的新社会三大革命目标层层递进,共同推动中国从分裂走向统一,从剥削走向平等。
揭秘出租车数据背后的城市脉搏!本项目基于Spark和MLlib技术,从时空双维度解析出租车订单数据:先通过探索性分析挖掘订单规律(如每小时/周/月趋势),再构建线性回归和随机森林模型预测车费(含降雪、湿度特征)同时利用Spark SQL和GeoPandas绘制机场车流热力图,实现从数据预处理(读取、清洗)到模型评估(统计可视化)的全流程闭环,为城市交通规划提供数据洞察。
高级语言Java部分概念
类
成员变量
对象的属性以成员变量的形式存在
局部变量
可以将局部变量的有效范围成为变量的作用域,局部变量的有效范围从该变量的声明开始到该变量的结束为止
在相互不嵌套的作用域可以同时声明两个名称和类型相同的局部变量
Number
不代表任何一个数字
不能进行实例化
它的子类可以创建它的对象
它的子类可以继承并使用它的所有的方法
抽象类可以定义非抽象方法
两个不相关的类可以实现同一个接口
一个类可以实现多个接口,但只能继承一个父类
抽象类中不一定要有抽象方法
子类可以访问父类所有的变量和方法
定义一个基本的模块,代表共性
但是private在子类中不可见
特性
封装性
对象和行为是一个整体,两个要封装到独立单元中
隐藏部分对象和行为
可以被认为是一个保护屏,防止该类的代码和数据被外部类定义的代码随机访问
同时会隐藏类内部结构的实现信息,减少耦合
步骤
修改属性的可见性来限制对属性的访问(修改修饰符为(private)
对每个值属性提供对外的公共方法访问,一个设置值,一个获取值
在类层次结构中,当子类的成员变量与父类的成员变量同名时,子类的成员变量会隐藏父类的成员变量
继承性
子类继承父类,拥有父类的行为及属性
父类设计更加抽象化,如具体实例的通用特性
多态性
方法重载
类多态就是为了解耦
运行时确定实现,在编码是指定父类对象
形式
对象向上转型
对象向下转型
父类对象如果想要使用子类对象,就要将父类对象转为子类对象
对象的多态
多个子类继承父类,则拥有同样的名字,,但是执行不同的行为
接口
概念
第一个抽象类型,是抽象方法的集合,接口通常以interface来声明。一个类通过继承接口的方式,从而来继承接口的抽象方法
不能实例化接口
关键字
implements
抽象类一定要进行覆写
利用接口实现多重继承,先继承extends,后继承implements
分类
Collection
是最基本的集合接口,一个Collection代表一组Object,Collection接口存储一组不唯一.无序的对象
List
是一个有序的Collection,可以控制每个元素插入的位置,能够通过索引来访问List中的元素,其存储一组不唯一,有序的对象
子类
ArrayList
LinkedList
操作
add(E,e)
add(int, index ,E e)
向List指定位置添加一个元素e
clear()
清空List元素
cntains(Object b)
判断b是否在List中
get(int index)
获取List下指定下标的元素
isEmoty()
是否为空列表
iterator()
返回List迭代器
set(int index,E e)
替换List中指定index的值为新值e
size()
返回List的大小
subList(int start ,int end)
截取List
前包含,后不包含
需要导入包
通过ArrayList实例化,并指定元素的类型
Map
子类
HashMap
概念
存储一组键值对.提供key到value的映射
Map提供的接口分别用于返回哪三个关系集
Set
子类
HashSet
概念
具有与Collection完全一样的接口,只是行为上不同,Set不保存重复的元素,其存储一组唯一,无序的对象
interface
方法默认省略了 public abstract
接口不是类体系的一部分
父类和接口有同名的方法,父类方法的优先级高于接口
接口中的所有方法默认都是抽象的
生成对象后
访问对象属性
访问对象行为
需要设置对象属性,这样在访问对象的属性时就会有值
变量
类变量
独立于函数之外的变量
用static修饰
又称为静态变量
需要以static 修饰,必须在方法之外
无论类创建了多少对象,类只拥有类变量的一份拷贝,即共享变量
静态变量除了被声明为常量外比较少使用,即和final关键字一起声明
类变量的值可以在声明的时候确定,也可以在构造方法中指定
静态变量还可以在静态语句块中初始化
类变量被声明为public static final 类型时,类变量名称一般建议使用大写字母
可以类名.变量名来访问
实例变量
独立于函数之外的变量
没有static修饰
需要声明在一个类中,但在方法、构造方法和语句块之外
局部变量
类的函数中的变量
局部变量没有默认值
局部变量被声明后,必须经过初始化,才可以使用
在方法啊、构造方法或者语句块被执行的时候创建,当它们执行完成后,变量会被销毁,也就是说,局部变量只在声明它的方法、构造方法或者语句块中可见
类变量和实例变量最大的区别是是否共享
泛型
如果不想在定义的时候指定参数的类型,可以使用泛型技术
所有泛型方法声明都有一个类型参数声明部分(由尖括号分隔)
类型参数能被用来声明返回值类型
泛型方法的声明和其他方法一样。即类型参数只能代表类型引用,不是原始类型
数组
存储同类元素
预先知道要存储多少个值的时候
使用的是引用数据类型
函数
返回值
概念
在Java中.如果想要插入一段代码,很简单的方式就是定义一个函数,函数里面放入想执行的代码片段,然后在需要的时候调用函数即可,而这个函数可以理解为这段代码的封装
使程序逻辑清楚,方便代码重用,利于维护,提高啊开发效率。
在Java 中 ,如果函数参数是一般数据类型时,使用的是值传递,这时在函数里面改变值,并不会改变真实值。
在Java中,当参数类型是引用数据类型时,使用的是引用传递,这时在函数里面改变值,会改变真实值。
函数重载
相同名字但是参数不同的方法
存在于同一个类中
返回值类型应该和实际返回值类型对应
如果没有返回值,那么就可以不写return与极具,或者只写一个return ,而这时返回值类型为void。
子主题 3
分类
构造函数
Java类实例化通过构造函数生成
名称需要和类名一致
声明处不能有返回值类型声明
不能在方法中加return返回一个值
默认一个无参构造,如果有显示的有参构造,则没有默认无参构造
方法函数
类的行为特征
方法重写
子类中重写
分支主题
分支主题
修饰权限
public
对所有类都可见
private
在同一类内可见
default
在同一包内可见,不使用修饰符
protected
对同一包的类和所有子类可见
循环
一般情况下,代码都是顺序执行的,但是在有些情况下我们希望可以插入一段代码(或函数),可以执行循环
while循环
do...while循环
for循环
经常使用
先初始化,然后判断布尔表达式,接着执行代码,然后更新变量,最后再次循环
break
直接中断循环
continue
中断一次循环,后续循环继续
区别
先执行先判断
关键字
abstract
可以修饰类和方法
不能修饰成员变量
自动类型转换
byte→short→char→int→long→float→double
异常处理
自定义异常处理方法
try catch finally 语句
使用 throws 直接抛出异常
表达式
增量表达式
++
--
正则表达式
是一组公式,描述了一种字符串匹配的格式
d'd
通常用于判断语句中,用来检测某一字符串是否满足某一格式。我们可以调用String中的matches(String regex)方法,判断字符串是否匹配给定的正则表达式,返回布尔值
内容
.
代表任何一个字符
\\d
代表0-9的任何一个数字
\\D
代表任何一个非数字字符
\\s
代表空白字符
\\S
代表非空白字符
\\w
代表可以用作标识符的字符
\\W
代表不可用于标识符的字符
\\p{Lower}
代表小写字母a-z
\\p{Upper}
代表大写字母A-Z
\\p{ASCII}
ASCII字符
\\p{Alpha}
字母字符
\\p{Bigit}
十进制数字
\\p{Alnum}
数字或字母字符
\\p{Punct}
标点符号
\\p{Graph}
可见字符
\\p{Print}
可打印字符
\\p{Blank}
空格或制表符
\\p{Cntr}
控制字符
允许使用限定修饰符来限定元字符出现的次数
限定修饰符
*
0次或多次
?
0次或一次
+
分支主题
{n}
正好出现n次
{n,}
至少出现n次
{n,m}
出现n到m次