- 博客(68)
- 收藏
- 关注
原创 第二章:日期
获取系统时间获取系统的年月日时分秒SimpleDateFormat类自定义格式练习题:出生的时长和万天后的日期以上总结Calendar类的应用总结TimeZone类总结LocalDateTime类DateTimeFormatter总结获取系统时间public class Demo { public static void main(String[] args) { // 1.创建Date对象,输出:对象,获取系统时间 Date date = new Date().
2022-05-26 11:44:16 287
原创 第一章:字符串合集
String知识点String特点常量池的工作原理常量池分类常量池优点equals方法系统默认方法重写equals方法==的作用toString方法系统默认方法重写toString方法字符串的存储方式面试题:对象创建个数String API字符串长度指定索引处的字符任意类型转换为字符串类型指定字符处的索引删除字符串的头尾空白符获取子字符串字符串大小写指定的前缀开始或后缀结束StringBiuder API作用与优点增删换插、反转正则表达式常用的元字符正则 API包装类包装类的父类拆箱与装箱String 转.
2022-05-24 00:52:45 785
原创 Gitee的基本使用
将远程仓库 拉取到 工作区将远程仓库 先克隆到 本地仓库 再检入到 工作区将工作区 先存放在 暂存区 再提交到 本地仓库 上传到 远程仓库工作区:编译代码 暂存区:工作区与本地仓库之间过渡 本地仓库:记录本地代码...
2022-03-26 15:03:27 951 4
原创 第四章:多态与动态绑定机制
多态代码演示:方法的多态对象的多态多态多态:方法或对象具有多种形态。多态是建立在封装和继承基础之上代码演示:方法的多态sum方法实现了重载,method方法实现了重写;相同名称的方法有着不同的作用(形态)public class Test { public static void main(String[] args) { A a = new A(); B b = new B(); a.method(); // 运行结果:父类的成.
2022-03-22 18:41:05 809 2
原创 第三章:继承和父子构造器、方法重写
extends关键字代码演示:extends关键字的基本使用父子类的访问特点代码演示:子类间接访问父类的属性及行为代码演示:子类访问父类的属性及行为的优先级父子类的构造器代码演示:子类构造器访问父类的无参构造方法代码演示:子类构造器访问父类的有参构造方法代码演示:子类构造器的调用不限于直接父类还有上级类super 与 this 的三种用法super的三种用法代码演示:super的三种用法this的三种用法代码演示:this的三种用法方法重写extends关键字1. extends表示继承2. 继承.
2022-03-20 15:04:13 558
原创 第二章:构造器与封装
构造方法代码演示:有参构造器的作用默认无参构造器代码演示:证明当创建对象时,会执行构造器中的内容代码演示:有参无参构造器都被调用时,需手动添加一个显式无参构造器构造器的流程分析封装private关键字封装的实现步骤代码演示:set方法与get方法代码演示:构造器与与get方法构造方法1. 构造方法作用:完成对象的初始化,并不是创建对象2.构造方法定义格式:修饰符 方法名() { }3. 构造方法的使用规则: a. 方法名与类名相同,参数列表也要保持一致 b. 没有返回值类型,也没有返.
2022-03-18 21:49:29 634
原创 第一章:面向对象与包的应用
类与对象代码演示:类与对象的应用内存概述代码演示:对象与类的基本操作内存示意图解析内存对象作为引用数据类型(地址)代码演示:对象作为方法的参数列表代码演示:对象作为方法返回值类型垃圾回收机制类与对象1. 类与对象的概念 类:对事物的抽象概括 对象:对抽象事物实例化 2. 类与对象创建的格式 类:修饰词 class 类名 {} 对象:类型 对象名 = new 类型();3. 对象成员变量的赋值及访问 赋值格式:对象名.变量名 = xxx; 访问变量需配合 System.
2022-03-18 20:44:28 410
原创 第八章:权限修饰词
权限修饰词修饰符本类同一个包下的类子类其他类public可以访问可以访问可以访问可以访问protected可以访问可以访问可以访问不可以访问默认可以访问可以访问不可以访问不可以访问private可以访问不可以访问不可以访问不可以访问...
2022-02-21 21:18:04 219
原创 第六章:接口 和 多态接口
Java接口接口介绍代码演示:常量、抽象方法、默认方法、静态方法接口与类的使用单个实现类继承父类连接两个接口接口多继承的特点接口介绍抽象类与类之间是继承关系,接口与类之间称为实现接口是一个抽象类型,是抽象方法的集合,接口通常以interface来声明代码演示:常量、抽象方法、默认方法、静态方法对于接口的常量和抽象方法可以省略public abstract。因为默认就是public abstract !对于接口的默认方法必须要修饰 default关键字对于接口的静态方法必须要修饰 stat
2022-02-18 19:22:46 421
原创 第五章:抽象类与抽象方法
抽象方法与抽象类的使用抽象的概念抽象类的注意事项代码演示:抽象方法与抽象类的使用小练习:用户输入半径,计算面积及周长抽象的概念对于父类的抽象方法,子类需要重写和覆盖,重写过程中就可以对抽象方法进行具体化抽象类的具体功能体现在抽象方法上面【含有抽象方法的类是抽象类】抽象类的注意事项抽象类是不能进行实例化(Animal是个抽象类,不能通过Animal类创建个Animal())抽象类必须至少要有一个子类进行继承(Pig类 继承 Animal类)抽象类中出现多个抽象方法,一定要对每个抽
2022-02-15 20:31:25 186
原创 第七章:Java的数组
Java的数组数组的概念数组的初始化数组的概念数组:它是一个容器,用来存放相同数据类型的多个数据特点: 1. 数组是引用数据类型 2. 数组要求存储的数据一定相同数据类型 3. 数组的长度在运行期间不可改变数组的初始化1. 静态初始化(指定内容)2. 动态初始化(指定长度) 数据类型 [] 数组名 = new 数组类型[大小]; int [] array = new in[10];数据类型:用来指定开辟多大的内存空间new:Java中的关键字,用来开辟空间长度:
2021-12-03 10:41:25 586 2
原创 第六章:Java的方法和重载
方法(函数)方法(函数)的概要方法的三种调用方法的返回值与参数列表的确定方法的重载(overload)代码演示:参数的个数不同代码演示:参数的类型不同、参数类型的顺序不同方法重载小练习方法(函数)的概要方法(函数)没有先后顺序(功能性函数与主函数没有先后顺序,只要定义,方可掉用)标准格式: public static int main(int data){ // demo return 0; } 修饰词 返回值类型 方法名称(参数列表){ // 修饰词:public static
2021-12-02 09:42:16 150
原创 第五章:Java的流程控制
Java的流程控制顺序结构if...else... 语句if...else if...else... 语句switch...case...default 语句while...语句while...break 语句do...while... 语句while与do...while的区别for 语句for循环的特殊用法for 与 continue 配合使用return的作用99乘法表的小测试顺序结构需求:输入单价与数量计算总价,添加:付款的金额以及找零的金额import java.util.Scanner;
2021-12-01 18:00:00 190
原创 第四章:Java的运算符
Java的认识四目运算符“+” 号的作用“+” 号的特殊使用自增、自减赋值运算符关系运算符逻辑运算符四目运算符public class HelloWorld { public static void main(String[] args) { int a1 = 7; int a2 = 2; System.out.println(a1+a2); System.out.println(a1-a2); System.out
2021-11-30 18:30:00 1325
原创 第三章:Java的基本数据类型
Java的数据类型基本数据类型代码演示:基本数据类型的取值范围代码演示:基本数据类型的默认值数据类型转换代码演示:自动类型转换 与 强制类型转换代码演示:类型转换Java的数据类型包含两种:1.基本数据类型、2.引用数据类型基本数据类型:整型(四个)、浮点型(两个)、字符、布尔引用数据类型:类(class)、数组([ ])、接口(interface基本数据类型计算它们的取值范围技巧:以字节型为例:1字节等于8位,2的8次方等于128,上限是128-1,下限是-(128),所以范围是-128到1
2021-11-29 19:15:35 433
原创 第二章:Java的常量、普通变量、成员变量、局部变量
Java的全局变量、静态变量、局部变量全局变量与静态变量全局变量静态变量局部变量局部变量的作用域代码演示全局变量与静态变量全局变量/* * 全局变量的作用域 * 在类(class)的内部,在方法(main)的外部*/public class GlobalVariable{ int age = 100; // age为全局变量 public static void main(String[] args) { // new 表示创建,创建一个对象(gv) GlobalVar
2021-11-28 16:23:08 1274
原创 第一章:Java的认识
java的认识java的框架认识“+” 号的作用:拼接标识符的命名规则常量概念字符串赋值并打印java的框架认识public class Hello{ //文件名必须是 Hello.java// public 表示权限公共的意思,外部可以随意调用和访问// class 表示类型,hello就是类名称//此行表示:创建一个类名为hello的权限公开 public static void main(String[] args){ // static又是另一个修饰词,public 和 s
2021-11-28 10:36:04 380
原创 3. 树莓派外设开发编程
树莓派外设开发编程树莓派的接口wiringPi库的基本使用树莓派的接口IO接口(input、output)Input:烟雾传感器、火焰传感器、振动传感器Output:继电器、蜂鸣器串口:uart、IIS、IIC、SPI…特定的接口:flashwiringPi库的基本使用供参考:树莓派wiringPi库详解a.验证wiringPi的是否安装成功b.初始化树莓派的引脚#include <wiringPi.h>#include <stdlib.h>#includ
2021-11-22 18:47:07 1227
原创 3. 函数
函数无参函数有参函数形参与实参函数比较两数大小(新型如果那么——> A?B:C;语句)无参函数#include <stdio.h>void printWelcome(){ printf("=========================\n"); printf("===Welcome to Zhejiang===\n"); printf("=========================\n");}int main(){
2021-11-20 13:51:14 533
原创 2. 数组
数组的定义#include <stdio.h>int main(){ int array1[5] = {1,2,3,4,5}; //完整赋值 int array2[5] = {1,2,3}; //部分赋值 int array3[] = {1,2,3,4,5}; //全部数据赋初值,以确认元素个数,可不指定数组长度 int array[5] = {0}; //初始化为0 int i;
2021-11-17 14:08:20 273
原创 1. 基础
变量定义 变量的具备四个特性: 变量名 变量类型 变量值 存储空间(地址) 变量的内存空间(32位) 1个字节 = 8bit int、float 占4个字节,说明32位 是2的32次方的存储空间范围 char 占1个字节,说明32位 是2的8次方的存储空间范围ACS码的打印#include <stdio.h>int main(){ char c = 'a'; char e = 'A'; printf("%c
2021-11-17 09:19:47 445
原创 C语言综合题(链表、结构体、指针)
链表A,每个节点存放一个新的链表B1,B2,B3,B4,B5的头结点。场景:一个年级,相当链表A该年级5个班,每个班5个人,相当于链表B1–B5做一个学生成绩管理系统学生成绩有语文 数学 英语功能: 录入成绩 找最三科总分的最高分 最低分 算出平均分#include <stdio.h>#include <stdlib.h>#include <string.h>struct student{ char name[100];
2021-10-24 15:34:12 225
原创 5.3Socket服务器与客户端信息交互
Socket服务器与客户端代码演示:简易的服务器代码演示:服务器读取客户端一次消息制作客户端代码演示:简易的服务器#include <stdio.h>#include <sys/types.h> /* See NOTES */#include <sys/socket.h>#include <netinet/in.h>#include <arpa/inet.h>int main(){ int s_fd
2021-09-25 15:27:04 65
原创 5.2Socket的API简介
Sockett的API简介Socket编程步骤Socket的API介绍socket()bind()地址转换listen()aceept()connect()Socket编程步骤TCP服务器1.socket() 创建套接字2.bind() 套接字里面添加IP地址和端口号3.listen() 监听客户端的连接而4.aceept() 接收客户端接入5.read()与write() 数据交互6.close() 关闭服务器TCP客户端1.socket() 创建套接字2.connect() 连接
2021-09-01 22:07:13 71
原创 5.1网络编程概述
网络编程概述进程间的通信方式的缺点TCP与UDP端口号字节序进程间的通信方式的缺点管道、消息队列、共享内存、信号、信号量 特点:都是依赖于内核缺陷:无法实现多机通讯需要通过网络,服务器与多客户端的通信TCP与UDPTCP协议与UDP协议都是传输层的协议1.TCP面向连接:如打电话,建立拨号连接 UDP面向不连接:如发短信,接收者不知是否已经阅读2.TCP提供可靠的服务:无差错,不丢失,不重复,且是按顺序达到 UDP尽最大努力交付,无法保证可靠交付3.TCP面向字节流:把数据看成一串无结
2021-09-01 18:31:04 65
原创 4.4线程条件控制,限制线程同步
线程条件控制,限制线程同步条件的原型供参考:Linux多线程编程初探条件的原型创建条件变量:int pthread_cond_init(pthread_cond_t *restrict cond, const pthread_condattr_t *restrict attr);销毁条件变量:int pthread_cond_destroy(pthread_cond_t *cond);等待:int pthread_cond_wait(pthread_cond_t *restrict cond, p
2021-09-01 14:12:14 88
原创 4.3线程同步之互斥量加锁解锁
线程同步之互斥量加锁解锁原型代码演示:互斥锁的基本使用代码演示:互斥锁限制共享内存的访问供参考:Linux多线程编程初探原型创建互斥锁:int pthread_mutex_init(pthread_mutex_t *restrict mutex, const pthread_mutexattr_t *restrict attr);销毁互斥锁:int pthread_mutex_destroy(pthread_mutex_t *mutex);加锁:int pthread_mutex_lock(pth
2021-08-30 17:28:18 88
原创 4.2线程的创建、等待、退出、获取ID 线程的共享内存
线程的创建、等待、退出线程的原型代码演示:线程的创建、等待、退出、获取ID学习总结供参考:Linux多线程编程初探线程的原型线程创建:int pthread_create(pthread_t *tid, const pthread_attr_t *attr, void *(*func) (void *), void *arg);线程退出:int pthread_exit(void *rval_ptr);线程等待:int pthread_join(pthread_t thread, void **r
2021-08-19 21:54:54 192
原创 4.1线程的优点、线程与进程的差异性
线程的优缺点、线程与进程的差异性线程的优点进程与线程的区别供参考:Linux多线程编程初探线程的优点1.线程是个"节俭"的多任务操作方式:切换效率远远快于进程2.线程的通信方式:数据共享3.多个线程不会分配很多内存,省空间进程与线程的区别参考文献:进程与线程的区别...
2021-08-17 20:00:32 60
原创 3.5信号量
信号量原型信号量(semaphore)与已经介绍过的 IPC 结构不同,它是一个计数器。信号量用于实现进程间的互斥与同步,而不是用于存储进程间通信数据。临界资源:很多资源一次只能供一个进程使用。一次仅允许一个进程使用的资源称为临界资源规定:进入实验室必须持有钥匙,且一人一把信号量集:一个实验室门口放有多把钥匙进入实验室,就要在门口领取钥匙(临界资源的情况:当门口只有一把钥匙,有多人想进入实验室,必须持有钥匙的进入,未持钥匙的在门外排队等待 )pv操作p操作 拿着钥匙进入实验室v操作 放
2021-08-17 19:37:46 57
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人