- 博客(21)
- 收藏
- 关注
原创 Java接口(一)
冲突类型描述解决默认方法之间的冲突多个接口有同名默认方法实现类必须重写,显式调用接口名.super方法名()或自定义逻辑默认方法与抽象方法冲突一个接口有默认方法,另一个接口有同名抽象方法抽象方法优先,必须重写,可选调用默认方法静态方法冲突多个接口有同名静态方法无冲突,通过接口名直接调用各自的静态方法返回类型不同接口方法返回类型不兼容编译错误,需修改接口方法接口默认方法与父类方法冲突父类有具体方法,接口有同签名默认方法父类方法优先级高于接口默认方法。
2025-03-28 23:58:57
1024
原创 Java抽象类
在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。抽象类是一种不能被实例化的类,主要用于作为其他类的基类,定义通用的结构和行为。 比如:如果打印图形会发现虽然父类 Shape 也有draw方法但是Shape中的draw方法并没有什么实际工作, 这是因为Shape类并不是具体的图形。主要的绘制图形都是由 Shape的各种子类的 draw 方法来完成的。像这种没有实际工作的方法,可以设计成一个
2025-03-24 11:10:51
592
原创 Java继承(一)
通过观察发现,猫和狗的类中存在大量重复继承允许一个类(子类)基于另一个类(父类)来构建,子类可以继承父类的属性和方法,并可以扩展或修改它们。继承主要解决的问题是:共性的抽取,实现代码复用。
2025-03-19 23:50:55
1092
原创 Java类与对象(二)
/ 包声明package 包命名;//例如基本规则在文件的最上方加上一个 package 语句指定该代码在哪个包中.包名需要尽量指定成唯一的名字。包名要和代码路径相匹配. 例如创建 com.example.util 的包, 那么会存在一个对应的路径 com/example/util 来存储代码.如果一个类没有 package 语句, 则该类被放到一个默认包中.
2025-03-18 16:41:35
755
原创 Java类和对象(一)
类( class) 是构造对象的模板或蓝图。我们可以将类想象成制作小甜饼的切割机,将对象想象为小甜饼。类是用来对一个实体(对象)来进行描述的,主要描述该实体(对象)具有哪些属性(外观型号等),哪些功能(用来干啥),描述完成后计算机就可以识别了。由类构造(construct) 对象的过程称为创建类的实例 (instance )。面相对象程序设计关注的是对象,而对象是现实生活中的实体,比如:洗衣机。但是洗衣机计算机并不认识,需要开发人员告诉给计算机什么是洗衣机。
2025-03-17 12:15:07
974
原创 C语言八之指针
我们知道计算机上CPU(中央处理器)在处理数据的时候,需要的数据是在内存中读取的,处理后的数据也会放回内存中,电脑上内存是8GB/16GB/32GB,把内存划分为⼀个个的内存单元,每个内存单元的⼤⼩取1个字节。计算机中常⻅的单位(补充):⼀个⽐特位可以存储⼀个2进制的位1或者0内存单元的编号==地址==指针计算机内是有很多的硬件单元,⽽硬件单元是要互相协同⼯作的。硬件与硬件之间是互相独⽴的,但是可以⽤"线"连起来。⽽CPU和内存之间也是有⼤量的数据交互的,所以,两者必须也⽤线连起来。CPU
2025-01-19 23:54:55
1083
原创 C语言七之操作符
/代码1:变量的定义int x;int y;}p1;//声明类型的同时定义变量p1//定义结构体变量p2//代码2:初始化。struct Stu //类型声明//名字int age;//年龄//初始化//指定顺序初始化//代码3int data;//结构体嵌套初始化//结构体嵌套初始化//学生类型//成员变量int age;//全局变量struct Student s3 = {"王五", 25, 88.8};//全局变量int x;int y;
2025-01-18 10:18:40
1023
原创 C语言六之函数递归
假设n个台阶的跳法是Fib(n),那么n-1个台阶的跳法是Fib(n-1),n-2个台阶的跳法是Fib(n-2)。如果青蛙最后一次一次跳了一个台阶,那么它前面走了n-1个台阶,n-1个台阶有Fib(n-1)个跳法。青蛙也有可能最后一次一次跳了两个台阶,那么它前面跳了n-2个台阶,n-2个台阶的跳法是Fib(n-2)。那么这只青蛙的跳法要不就是前面跳了n-1个台阶来到倒数第一个台阶,然后一次跳上去;要么就是前面跳了n-2个台阶来到倒数第二个台阶,然后一次跳上去。
2024-11-12 22:39:21
1032
1
原创 C语言第5篇函数
ret_type fun_name(形式参数)• ret_type 是函数返回类型:表⽰函数计算结果的类型,有时候返回类型可以是 void ,表⽰什么都不返回void print(void)//返回类型的地方void表示函数没有返回值,参数部分的void表示函数不需要参数int main()print();return 0;• fun_name 是函数名• 括号中放的是形式参数• {}括起来的是函数体:函数体就是完成计算的过程。
2024-05-07 18:35:29
832
原创 C语言第四篇数组
数组是⼀组相同类型元素的集合数组的初始化⼀般使⽤⼤括号,将数据放在⼤括号中。下标是从0开始的,假设数组有n个元素,最后⼀个元素的下标是n-1int arr[10] = {1,2,3,4,5,6,7,8,9,10};数组的访问提供了⼀个操作符[ ]–下标引用操作符。访问下标为7的元素,我们就可以使⽤ arr[7]练习:产⽣数组所有元素的下标,那我们使⽤for循环产⽣0~9的下标就可以打印1 ~ 103.3 数组的输⼊4. ⼀维数组在内存中的存储数组在内存中是连续存放的。随着数组下标的增长,地址也是
2024-04-22 22:12:05
982
原创 第三篇补充分支循环
switch语句语句是⼀种特殊形式的if…else结构。⽤于判断条件有多个结果的情况。printf(“整除,余数为0\n”);printf(“余数是1\n”);elseprintf(“余数是2\n”);等价于case 0:printf(“整除,余数为0\n”);break;case 1:printf(“余数是1\n”);break;case 2:printf(“余数是2\n”);break;练习:1. 输⼊1~5,输出的是“⼯作⽇”
2024-04-17 07:16:19
1108
原创 C语言学习第三篇分支循环全
if ( 表达式 )语句表达式成⽴(为真),则语句执⾏,表达式不成⽴(为假),则语句不执⾏,,也就是表达式的结果如果是0,则语句不执⾏,表达式的结果如果不是0,则语句执⾏。
2024-04-04 19:53:43
553
1
原创 C语言第二篇补充
占位符:所谓“占位符”,就是这个位置可以⽤其他值代⼊。占位符的第⼀个字符⼀律为百分号%,第⼆个字符表⽰占位符的类型。例如:%d和%s//100abc注意:输出⽂本⾥⾯可以使⽤多个占位符。int main()//lisi替换%s,21替换%dreturn 0;printf()参数与占位符是⼀⼀对应关系,如果有n个占位符,printf()的参数就应该有n+1个。如果参数个数少于对应的占位符,printf()可能会输出内存中的任意值。(例如上个代码有2个占位符,printf()有3个参数)
2024-04-03 23:58:45
989
1
原创 C语言学习第二篇
使⽤整型类型来描述整数,使⽤字符类型来描述字符,使⽤浮点型类型来描述⼩数。所谓“类型”,就是相似的数据所拥有的共同特征,编译器只有知道了数据的类型,才知道怎么操作数据。
2024-04-02 23:18:37
844
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅