![](https://img-blog.csdnimg.cn/be4089a471cc4d0fb68cb3cadff64908.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
Java基础
文章平均质量分 57
帮Java小白同学系统性的学一下javase
清浅7
这个作者很懒,什么都没留下…
展开
-
来聊聊多态
生活中,比如求面积的功能,圆、矩形、三角形实现起来是不一样的。跑的动作,小猫、小狗和大象,跑起来是不一样的。可见,同一行为,通过不同的事物,可以体现出来的不同的形态。好处:运行时,看“子类”,如果子类重写了方法,一定是执行子类重写的方法体;变量引用的子类对象不同,执行的方法就不同,实现动态绑定。有的时候,我们在设计一个数组、或一个成员变量、或一个方法的形参、返回值类型时,无法确定它具体的类型,只能确定它是某个系列的类型。弊端:编译时,只能调用父类声明的方法,不能调用子类扩展的方法;所以说继承是多态的前提。原创 2023-04-27 19:15:57 · 55 阅读 · 0 评论 -
方法重写(Override)
我们说父类的所有方法子类都会继承,但是当某个方法被继承到子类之后,子类觉得父类原来的实现不适合于子类,该怎么办呢?2.子类方法的返回值类型必须【小于等于】父类方法的返回值类型(小于其实就是是它的子类,例如:Student < Person)。3.子类方法的权限必须【大于等于】父类方法的权限修饰符。方法的重载:方法名相同,形参列表不同。2.必须保证父子类之间重写方法的参数列表也完全相同。1.必须保证父子类之间重写方法的名称相同。跨包的父类缺省的方法也不能重写。5、方法的重载和方法的重写。方法的重写:见上面。原创 2023-04-27 19:07:33 · 84 阅读 · 0 评论 -
对象数组和二维数组
数组是用来存储一组数据的容器,一组基本数据类型的数据可以用数组装,那么一组对象也可以使用数组来装。即数组的元素可以是基本数据类型,也可以是引用数据类型。当元素是引用数据类型是,我们称为对象数组。注意:对象数组,首先要创建数组对象本身,即确定数组的长度,然后再创建每一个元素对象,如果不创建,数组的元素的默认值就是null,所以很容易出现空指针异常NullPointerException。原创 2023-04-10 22:08:20 · 230 阅读 · 0 评论 -
Java中的递归算法
在递归中虽然有限定条件,但是递归深度不能太深,否则效率低下,或者也会发生栈内存溢出。案例:计算斐波那契数列(Fibonacci)的第n个值,斐波那契数列满足如下规律,间接递归可以A方法调用B方法,B方法调用C方法,C方法调用A方法。递归一定要有条件限定,保证递归能够停止下来,否则会发生栈内存溢出。通俗的来说就是方法调用其本身!能够使用循环代替的,尽量使用循环代替递归。:方法自己调用自己的现象就称为递归。递归分为两种,直接递归和间接递归。直接递归称为方法自身调用自己。原创 2023-04-10 21:59:49 · 227 阅读 · 0 评论 -
方法的重载
指在同一个类中,允许存在一个以上的同名方法,只要它们的参数列表不同即可,与修饰符和返回值类型无关。参数列表:数据类型个数不同,数据类型不同(按理来说数据类型顺序不同也可以,但是很少见,也不推荐,逻辑上容易有歧义)。重载方法调用:JVM通过方法的参数列表,调用匹配的方法。先找个数、类型最匹配的再找个数和类型可以兼容的,如果同时多个方法可以兼容将会报错案例,用重载实现:(1)定义方法求两个整数的最大值(2)定义方法求三个整数的最大值(3)定义方法求两个小数的最大值。原创 2023-04-09 09:18:24 · 58 阅读 · 0 评论 -
匿名对象是个啥
new Student() 在堆内存开辟空间,同时产生一个地址值,我们在这里以0x11表示,实际的地址值不是这个,是一个更复杂的组合方式;将栈内存创建一个引用变量s,将该地址值赋值给s,这时就可以通过s访问堆内存空间的对象,这个s就是对象的名字,这个对象就叫做有名字的对象。匿名对象其实就是对象,对象具有的功能匿名对象都具有,只不过有名字的对象可以重复使用,匿名对象只能用一次罢了。顾名思义,匿名就是没有名字的对象,在创建对象时,只通过new的动作在。相对应的,如果s不存在的话,就是匿名对象。原创 2023-04-09 08:55:02 · 314 阅读 · 0 评论 -
方法的参数传递机制
方法的形参是引用数据类型时,形参地址值的改变不会影响实参,但是形参地址值里面的数据的改变会影响实参,例如,修改数组元素的值,或修改对象的属性值。方法的参数传递机制:实参给形参赋值,那么反过来形参会影响实参吗?方法的形参是基本数据类型时,形参值的改变不会影响实参;注意:String、Integer等特殊类型容易错。案例:编写方法,交换两个整型变量的值。1、形参是基本数据类型。原创 2023-04-06 21:53:59 · 46 阅读 · 0 评论 -
可变参数的介绍
之后,当定义一个方法时,形参的类型可以确定,但是形参的个数不确定,那么可以考虑使用可变参数。【修饰符】 返回值类型 方法名(【非可变参数部分的形参列表,】参数类型[] 形参名){ }可变参数部分按照可变参数的规则传入0~n个对应类型的实参或传入1个对应类型的数组实参;2、方法包含非可变参数和可变参数。原创 2023-04-05 20:09:22 · 370 阅读 · 0 评论 -
关于Java中的方法看这一篇就足够了
方法不调用不执行,调用一次执行一次,每次调用会在栈中有一个入栈动作,即给当前方法开辟一块独立的内存区域,用于存储当前方法的局部变量的值,当方法执行结束后,会释放该内存,称为出栈,如果方法有返回值,就会把结果返回调用处,如果没有返回值,就直接结束,回到调用处继续执行下一条指令。方法头就是 【修饰符】 返回值类型 方法名(【形参列表 】)【throws 异常列表】,也称为方法签名,通常调用方法时只需要关注方法头就可以,从方法头可以看出这个方法的功能和调用格式。成为一个独立的语句,这种情况,返回值丢失。原创 2023-04-05 19:55:35 · 107 阅读 · 0 评论 -
5.4 方法(Method)
java.awt和java.swing----包含了构成抽象窗口工具集(abstract window toolkits)的多个类,这些类被用来构建和管理应用程序的图形用户界面(GUI)。java.util----包含一些实用工具类,如集合框架类、日期时间、数组工具类Arrays,文本扫描仪Scanner,随机值产生工具Random。java.lang----包含一些Java语言的核心类,如String、Math、Integer、 System和Thread等,提供常用功能。原创 2023-04-05 15:49:31 · 41 阅读 · 0 评论 -
成员变量概述
我们上一篇介绍了类和对象的关系,其中一句话!我们类的成员都有:位置要求:必须在类中,方法外类型要求:可以是Java的任意类型,包括基本数据类型、引用数据类型(类、接口、数组等)修饰符:成员变量的修饰符有很多,例如:public、protected、private、static、volatile、transient、final等,后面会一一学习。其中static可以将成员变量分为两大类,静态变量和非静态变量。其中静态变量又称为类变量,非静态变量又称为实例变量或者属性。==接下来先学习实例变量。原创 2023-04-05 15:06:00 · 418 阅读 · 0 评论 -
类的定义and对象的创建
不是,因为Java是对程序员隐藏内存地址的,不暴露内存地址信息,所以打印对象时不直接显示内存地址,而是JVM帮你调用了对象的toString方法,将对象的基本信息转换为字符串并返回,默认toString方法返回的是“对象的运行时类型@对象的hashCode值的十六进制值”,程序员可以自己改写toString方法的代码(后面会讲如何改写)。//或者说,把创建的对象用一个引用数据类型的变量保存起来,这样就可以反复使用这个对象了。那么,对象名中存储的是什么呢?关键字:class(小写)//给创建的对象命名。原创 2023-04-05 14:31:53 · 82 阅读 · 0 评论 -
类和对象 看这一篇就够了
类是对象的模板,对象是类的实体!原创 2023-04-05 14:26:37 · 40 阅读 · 0 评论 -
何为面向对象?
1、编程语言概述Java是一种计算机程序设计语言。所有的计算机程序一直都是围绕着两件事在进行的,程序设计就是用某种语言编写代码来完成这两件事,所以程序设计语言又称为编程语言(编写程序的语言)。如何表示和存储数据基本数据类型的常量和变量:表示和存储一个个独立的数据对象:表示和存储与某个具体事物相关的多个数据(例如:某个学生的姓名、年龄、联系方式等)数据结构:表示和存储一组对象,数据结构有数组、链表、栈、队列、散列表、二叉树、堆......基于这些数据都有什么操作行为,其实就是实现什么功能。原创 2023-04-05 14:02:19 · 41 阅读 · 0 评论 -
IDEA常用快捷键(第一部分)
向下移动代码:Ctrl+Shift + ↓ (整个方法移动) 或 Alt + Shift + ↓(逐行移动)向上移动代码:Ctrl+Shift + ↑ (整个方法移动)或 Alt + Shift + ↑(逐行移动)选中整个多行注释部分再按一次Ctrl + Shift + /,就可以取消多行注释。选中行用多行注释注释掉:Ctrl + Shift + /,在当前光标上一行插入空行开始编辑:Ctrl+Alt+回车。折叠方法实现:Ctrl + Shift + -展开方法实现:Ctrl +Shift + +原创 2023-03-31 20:25:28 · 373 阅读 · 0 评论 -
Java的基本数据类型的存储范围
float:单精度浮点型,占内存:4个字节,精度:科学记数法的小数点后6~7位double:双精度浮点型,占内存:8个字节,精度:科学记数法的小数点后15~16位。原创 2023-03-31 20:14:07 · 315 阅读 · 0 评论 -
<1>复习1
对前几篇文章的进行的总结原创 2023-03-31 11:12:44 · 43 阅读 · 0 评论 -
2.简单的一些Java语法
一些简单的Java语法原创 2023-03-31 10:20:02 · 57 阅读 · 0 评论 -
2.8 计算机如何存储数据
十进制的256,二进制:100000000,为了缩短二进制的表示,又要贴近二进制,在程序中引入八进制和十六进制。计算机数据的存储使用二进制补码形式存储,并且最高位是符号位,最高位1是负数,最高位0是正数。double:双精度浮点型,占内存:8个字节,精度:科学记数法的小数点后15~16位。float:单精度浮点型,占内存:4个字节,精度:科学记数法的小数点后6~7位。负数的反码:在原码的基础上,最高位不变,其余位取反(0变1,1变0)(4)十六进制 数字组成:0-9,a-f 进位规则:逢十六进一。原创 2023-03-31 10:44:41 · 63 阅读 · 0 评论 -
3.final关键字
final关键字的作用原创 2023-03-31 10:45:09 · 46 阅读 · 0 评论 -
入门程序HelloWorld
方式二:在notepad++软件的文件菜单-->打开所在文件夹-->命令行(要求notepad++软件必须是用管理员权限启动的,否则会出现已经正确配置了环境变量,却仍然找不到javac命令的问题)我们建议大家,不管是否是public,都与源文件名保持一致,而且一个源文件尽量只写一个类,目的是为了好维护。源程序就编写完成了,但是这个文件是程序员编写的,JVM是看不懂的,也就不能运行,因此我们必须将编写好的。,该文件就是编译后的文件,是Java的可运行文件,称为。(2)一个源文件中是否可以有多个类?原创 2023-03-30 11:48:40 · 283 阅读 · 0 评论