![](https://img-blog.csdnimg.cn/5ba35c8b0d0143cb8337c138166c6dd5.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Java高级编程学习-菜鸟教程
文章平均质量分 93
基于菜鸟网站进行的Java高级编程学习,记录了学习中遇到的难点和痛点,从浅入深
Stevedash
加油!其实人生在世吧,是不太需要别人建议的...
不会明白的,只有亲身经历后才知道
展开
-
一文带你理解 数组、List和ArrayList的区别
此时它是一个List对象了,有些ArrayList有但是List没有的属性和方法,它就不能再用了。List泛型的好处:通过允许指定泛型类或方法操作的特定类型,泛型功能将类型安全的任务从您转移给了编译器。比如在数组的两个数据间插入数据也是很麻烦的,还有我们在声明数组的时候,必须同时指明数组的长度,这样,在我们使用ArrayList中的数据来处理问题的时候,很可能会报类型不匹配的错误, 既使我们保证在插入数据的时候都很小心,都有插入了同一类型的数据,这就存在了装箱与拆箱的操作,会带来很大的性能损耗。原创 2023-08-23 00:16:45 · 219 阅读 · 0 评论 -
深入探究 Java 8 新特性:Optional 类允许为空的对象类
Java 8 引入的Optional类为我们提供了一种更加安全和优雅的方式来处理可能为空的值,避免了空指针异常的发生。通过使用Optional类,我们可以编写出更加简洁、可读性更高的代码。作者:Stevedash发表于:2023年8月18日 19点45分Java 8 Optional 类 | 菜鸟教程 (runoob.com)注:本文内容基于个人学习理解,如有错误或疏漏,欢迎指正。原创 2023-08-18 20:12:27 · 258 阅读 · 0 评论 -
深入探索 Java 8 新特性:Lambda 表达式
Java 8 引入的 Lambda 表达式是一项重要的特性,它让 Java 编程变得更加现代化、简洁和灵活。通过 Lambda 表达式,我们可以更直观地表达代码逻辑,提高代码的可读性和可维护性。希望通过这边关于Lambda表达式的文章,各位都能在合适的场景下,使用 Lambda 表达式编写出更加优雅和高效的代码。作者:Stevedash发表于:2023年8月17日 21点15分Java 8 Lambda 表达式 | 菜鸟教程 (runoob.com)维护性。原创 2023-08-17 21:21:27 · 116 阅读 · 0 评论 -
一文带你彻底弄懂Java 8 新特性:探索现代化编程世界
Java 8 的新特性为编程世界带来了前所未有的现代化和灵活性,包括 Lambda 表达式、函数式接口、Stream API、默认方法和方法引用等。通过学习和应用这些特性,我们能够编写更为优雅、高效的代码,将现代编程的魔法融入到我们的项目中。作者:Stevedash发表于:2023年8月17日 10点14分Java 8 新特性 | 菜鸟教程 (runoob.com)注:本文内容基于个人学习理解,如有错误或疏漏,欢迎指正。原创 2023-08-17 12:07:59 · 93 阅读 · 0 评论 -
Java 的文档注释其实并没有那么简单
由于 javadoc 的实现不同,工作也可能不同,你需要检查你的 Java 开发系统的版本等细节,选择合适的 Javadoc 版本。说明注释,使我们更加方便的记录你的程序信息。标签必须在一个新行的开始或者在一行的开始紧跟星号(*).* 之后,第一行或几行是关于类、变量和方法的主要描述。“/** */” 说明注释,可以多行之间注释。说明注释允许我们在程序中嵌入关于程序的信息。“/* */” 里面跟上想要写入的注释。标签,可以将它们一个接一个的放在一起。每一个类的信息将在独自的HTML文件里。原创 2023-08-16 21:00:04 · 111 阅读 · 0 评论 -
Java多线程编程:实现并发处理的高效利器
Java多线程编程是实现并发处理的有效手段,可以提高程序性能和响应能力。通过学习线程创建方式、线程同步、线程通信、线程的生命周期、线程的优先级和线程的常用方法,我们可以在应用程序中合理使用多线程来实现并发任务。作者:Stevedash发表于:2023年8月13日 20点45分Java 多线程编程 | 菜鸟教程 (runoob.com)注:本文内容基于个人学习理解,如有错误或疏漏,欢迎指正。原创 2023-08-14 16:14:10 · 149 阅读 · 0 评论 -
一篇文章带你了解Java发送邮件:使用JavaMail API发送电子邮件的注意事项、发送附件等
设置邮件服务器属性:指定SMTP服务器的主机名、端口、身份验证等属性。创建会话对象:使用邮件服务器属性创建一个会话对象,同时提供身份验证信息。创建邮件消息:创建一个邮件消息对象,设置发件人、收件人、主题、内容等信息。发送邮件:使用会话对象的Transport类发送邮件消息。 JavaMail API为Java程序员提供了发送电子邮件的便捷途径。通过设置邮件服务器属性、创建会话对象以及构建邮件消息,我们可以轻松地在Java应用程序中实现电子邮件发送功能。原创 2023-08-13 15:57:16 · 6078 阅读 · 0 评论 -
一文带你彻底了解java 网络编程的基本概念
在数字时代的今天,无处不在的网络连接已经成为现代软件开发的重要组成部分。Java作为一门强大的编程语言,提供了丰富的工具和技术,用于实现各种网络应用,从Web应用到分布式系统,再到网络游戏。本篇博客将带您深入探索Java网络编程的核心概念、基本组件以及实际应用。Java网络编程为现代软件开发提供了强大的工具和技术,使得在不同计算机之间进行数据交换和通信变得更加容易。无论是构建Web应用、分布式系统还是网络游戏,掌握网络编程对于程序员来说都是必不可少的一部分。原创 2023-08-11 19:33:23 · 91 阅读 · 0 评论 -
一文了解Java序列化和反序列化:对象的存储与传输
Java序列化是指将对象转换为字节流的过程,以便可以将其存储到文件、数据库或在网络上传输,并在需要时重新构建对象。序列化是Java的一个核心特性,它允许我们保存对象的状态并在需要时还原它们,从而实现持久化和数据交换。反序列化是将字节流转换回对象的过程,即将序列化后的字节流重新构建为对象。通过反序列化,我们可以将之前序列化的对象重新还原成原来的状态,从而实现数据的恢复和重建。Java序列化是一项强大的技术,允许我们将对象转换为字节流以进行存储、传输和重建。通过实现接口,并使用和。原创 2023-08-09 21:17:55 · 625 阅读 · 0 评论 -
深入理解Jdk5引入的Java泛型:类型安全与灵活性并存
除了使用Java提供的泛型类,你还可以自定义泛型类来满足特定需求。通过实现自己的泛型类,你可以更好地理解泛型的原理,以及如何灵活地使用它。 Java泛型是一项强大的功能,它既保持了类型安全,又提高了代码的灵活性和重用性。通过学习泛型的使用,能够编写更强大、更安全的代码,让我们的程序更加健壮和可维护。总结一下泛型类的优缺点:泛型类的优点:泛型类在编译时可以检查数据类型,从而提前发现类型错误,避免了在运行时出现类型转换异常。原创 2023-08-09 15:22:55 · 142 阅读 · 0 评论 -
一篇文章带你彻底了解Java Object类
每个Java类都直接或间接地继承了Object类。如果你没有明确指定一个类的父类,那么它默认继承自Object类。这意味着,你可以在自定义的类中使用Object类的方法,或者覆盖这些方法以满足特定需求。// 输出对象的字符串表示 } }Person {在上述示例中,我们自定义了一个Person类,并覆盖了Object类的toString()方法,以自定义的方式返回对象的字符串表示。Object类是Java中的根基,它为所有类提供了共同的属性和方法。通过掌握equals()hashCode()原创 2023-08-09 00:33:59 · 108 阅读 · 0 评论 -
解锁Java迭代器:优雅遍历集合元素的秘密武器
迭代器是一种在Java中用于遍历集合元素的工具。想象一下,你是一位探险家,而集合就是一片神秘的大陆。迭代器就像是你的导游,带你逐个探索这片大陆上的景点,而你无需关心导游是如何实现的。Java Iterator(迭代器)不是一个集合,它是一种用于访问集合的方法,可用于迭代 ArrayList 和 HashSet 等集合。Iterator 是 Java 迭代器最简单的实现,ListIterator 是 Collection API 中的接口, 它扩展了 Iterator 接口。原创 2023-08-08 12:10:13 · 124 阅读 · 0 评论 -
一篇文章带你彻底理解Java HashMap数据结构详解
HashMap 是一个散列表,HashMap 继承于AbstractMap,实现了 Map、Cloneable、java.io.Serializable 接口。。ConcurrentHashMap 是 Java 提供的一个线程安全的哈希表实现,它可以替代 HashMap 在并发环境中的使用。HashMap 的 key 与 value 类型可以相同也可以不同,可以是字符串(String)类型的 key 和 value,也可以是整型(Integer)的 key 和字符串(String)类型的 value。原创 2023-08-07 14:51:12 · 118 阅读 · 0 评论 -
一篇文章带你彻底理解Java HashSet数据结构详解
以上仅是 HashSet 的一些常用方法,还有其他的方法可以根据需要进行使用。如果需要更详细的信息,可以查阅 Java API 文档。更多 API 方法可以查看:https://www.runoob.com/manual/jdk11api/java.base/java/util/HashSet.html。HashSet 中的元素实际上是对象,一些常见的基本类型可以使用它的包装类。下面是使用HashSet的实例。原创 2023-08-06 18:35:08 · 277 阅读 · 0 评论 -
一篇文章带你彻底理解Java LinkedList数据结构详解
*链表是一种常用的数据结构,适合在动态插入和删除元素的场景中使用。**它的主要特点是节点之间通过引用连接起来,每个节点包含数据和指向下一个节点的引用。原创 2023-08-05 17:20:16 · 582 阅读 · 0 评论 -
一篇文章带你彻底理解Java ArrayList数据结构详解
更多 API 方法可以查看:https://www.runoob.com/manual/jdk11api/java.base/java/util/ArrayList.html。 **之前创建数组的时候,需要声明提前声明数组的大小,**ArrayList是一个可以动态修改的数组,与普通数组的区别就是没有固定大小的限制,它会动态调整长度。 反思:通过我们上面的例子,我们实现了 ArrayList 的增加元素、修改元素、删除元素、查找元素和遍历元素的操作。若是对数字进行排序:(默认从小到大)原创 2023-08-04 19:52:35 · 246 阅读 · 0 评论 -
一篇文章带你基本了解Java 集合框架、核心接口、以及需要掌握的各个数据结构
Java集合框架为程序员提供了预先包装的数据结构和算法来操纵他们。集合是一个对象,可容纳其他对象的引用。集合接口声明对每一种类型的集合可以执行的操作。集合框架的类和接口均在java.util包中。任何对象加入集合类后,自动转变为Object类型,所以在取出的时候,需要进行强制类型转换。结尾语:记录于2023年8月4号16时31分,以上仅为个人在[Java集合框架—Java高级编程—菜鸟教程](Java 集合框架 | 菜鸟教程 (runoob.com)原创 2023-08-04 16:35:49 · 357 阅读 · 0 评论 -
面向对象编程(Object-Oriented Programming,简称 OOP)的核心,封装、继承、多态
对象之间的关联关系描述了它们之间的联系,如聚合、组合和依赖等。关联关系使得多个对象之间可以相互协作完成任务。原创 2023-07-24 19:38:57 · 911 阅读 · 0 评论 -
Java-高级编程继承中向上转型(Upcasting)和向下转型(Downcasting)的简单理解
例如,当用户输入“Dog”时,我们可以将其转换为Dog类的对象,并使用向下转型将其转换为Dog对象,从而实现更多操作。如果一个父类变量被赋值为子类对象,在调用该变量时,只能使用父类中定义的方法。如果需要调用子类中添加的方法,则必须通过向下转型将父类变量转换为子类对象,从而实现调用子类方法。需要注意的是,向下转型是存在一定的风险和局限性的。虽然向下转型可以方便地使用子类特有的方法和属性,但需要注意的是,在未进行类型检查时进行错误的向下转型可能会引发异常,因此在使用时必须非常谨慎。原创 2023-05-10 00:58:21 · 639 阅读 · 0 评论 -
Java高级编程-数据结构(个人学习记录)
枚举(Enumeration)接口虽然它本身不属于数据结构,但它在其他数据结构的范畴里应用很广。枚举(The Enumeration)接口定义了一种从数据结构中取回连续元素的方式。例如,枚举定义了一个叫nextElement 的方法,该方法用来得到一个包含多元素的数据结构的下一个元素。Enumeration接口中定义了一些方法,通过这些方法可以枚举(一次获得一个)对象集合中的元素。这种传统接口已被迭代器取代,虽然Enumeration 还未被遗弃,但在现代代码中已经被很少使用了。原创 2023-05-08 21:52:03 · 206 阅读 · 0 评论