自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 关于String类必须了解的

目录1.为什么要有String类2.字符串的构造方式2.1使用常量串构造2.2直接new String对象2.3 使用字符数组进行构造3.String对象的比较3.1使用==比较3.2使用equals方法比较(按照字典序比较)3.3使用compareTo(String s)方法(按照字典序比较)3.4使用 compareToIgnoreCase(String str) 方法(与compareTo方式相同,但是忽略大小写)4.字符串查找方法5.字符串的转化5.1数值和字符串转化5.2字符串大小写转化5.3字符

2021-10-12 12:12:41 146

原创 抽象类与接口详解

抽象类与接口抽象类抽象类的概念抽象类语法抽象类的特性抽象类的作用接口接口的概念接口的语法接口的特性实现多个接口接口间的继承Comparable接口Cloneable 接口和深拷贝抽象类抽象类的概念如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。即将各种类所包含的公共属性和方法提取出来,但不能具体实现这些方法,就将该类设计为抽象类。抽象类语法在Java中,一个类如果被 abstract 修饰称为抽象类,抽象类中被 abstract 修饰的方法称为抽象方法,抽象方法不用给出具

2021-10-01 10:51:45 101

原创 JAVA特性之多态

多态多态的概念多态实现的条件重写重写的概念重写的规则重写和重载的区别重写的设计原则向上转型与向下转型向上转型使用场景向下转型instanceof关键字多态的优缺点使用多态的好处避免在构造方法中调用重写的方法多态的概念多态即多种形态,具体来讲就是去完成某个行为,当不同的对象去完成时会产生出不同的状态。例如吃这个行为,牛是吃草的,猫是吃鱼的…多态实现的条件必须在继承体系下子类必须要对父类中方法进行重写通过父类的引用调用重写的方法多态体现:在代码运行时,当传递不同类对象时,会调用对应类中的方法。

2021-09-30 23:16:18 108

原创 java类继承

目录继承1.1 为什么要有继承1.2 继承的概念1.3 继承的语法1.4 父类成员访问1.4.1 子类访问父类的成员变量1.4.2 子类中访问父类的成员方法1.5 super关键字1.6 子类构造方法1.7 super和this的区别1.8 初始化语句执行顺序1.9 protected 关键字1.10 继承方式1.11 final关键字1.12 继承与组合继承1.1 为什么要有继承java中使用继承能够实现代码的复用,能够表示实体之间的联系。例如:狗和猫是两个不同的类,但它们都属于动物这个父类,都

2021-09-24 01:33:04 175

原创 Java内部类

内部类什么是内部类内部类的分类成员内部类普通内部类静态内部类局部内部类匿名内部类什么是内部类在 Java 中,可以将一个类定义在另一个类或者一个方法的内部,前者称为内部类,后者称为外部类。内部类也是封装的一种体现。语法格式:public class OutClass { class InnerClass{ }}OutClass为外部类,InnerClass为内部类。注意定义在class 类名{}花括号外部的,即使是在一个文件里,都不能称为内部类public class A{

2021-09-16 01:12:56 43

原创 JAVA类与对象

什么是面向对象Java是一门纯面相对象的语言(Object Oriented Program,继承OOP),在面相对象的世界里,一切皆为对象。面相对象是解决问题的一种思想,主要依靠对象之间的交互完成一件事情。用面相对象的思想来涉及程序,更符合人们对事物的认知,对于大型程序的设计、扩展以及维护都非常友好。面向对象与面向过程的区别面向过程是一种以事件为中心的编程思想,编程的时候把解决问题的步骤分析出来,然后用函数把这些步骤实现,在一步一步的具体步骤中再按顺序调用函数。面向对象是一种以“对象”为中心的编程

2021-09-10 17:27:06 105

原创 java数组的使用

什么是数组数组:可以看成是相同类型元素的一个集合。在内存中是一段连续的空间。数组中存放的元素类型相同。数组的空间是连在一起的。每个空间有自己的编号,起始位置的编号为0,即数组的下标。为什么要使用数组在编程中,如果我们有一组相同数据类型的数据,例如有10个数字,这时候如果我们要用变量来存放它们的话,就要分别使用10个变量,而且要记住这10个变量的名字,这会十分的麻烦,这时候我们就可以用一个数组变量来存放他们。创建数组变量声明数组变量的语法:dataType[] arrayRefVar

2021-08-26 17:31:21 241

原创 递归那些事

什么是递归?一个方法直接或间接的调用自己,适用于把一个大型的复杂问题层层转化为一个与原问题相似的规模较小的问题求解。例:求1+2+3+…+N将原问题划分为若干小问题假设:sum(n)表示1+2+3+…+n-1+n==>sum(n-1)+n;sum(n-1)= 1+2+…+n-2+n-1==>sum(n-2)+n-1;…sum(2)=sum(1)+2;sum(1)=1(此时问题可以直接求解,即递归的出口)最终 public static long sum(int n){

2021-08-24 20:08:21 55

原创 java方法

什么是方法Java方法是语句的集合,它们在一起执行一个功能。类似于 C 语言中的 “函数”。方法是解决一类问题的步骤的有序组合方法包含于类或对象中方法在程序中被创建,在其他地方被引用使用方法的优点1. 是能够模块化的组织代码(当代码规模比较复杂的时候),有利于程序维护。2. 做到代码被重复使用, 一份代码可以在多个位置使用.3. 让代码更好理解更简单.4. 直接调用现有方法开发, 不必重复造轮子,提高程序开发的效率。方法的命名规则1.采用小驼峰规则(方法的名字的第一个单词应以小写字

2021-08-21 18:16:13 93

原创 java输入输出

从键盘输出控制台的输出由 print( ) 和 println() 完成。这些方法都由类 PrintStream 定义,System.out 是该类对象的一个引用。基本语法:System.out.println(msg); // 输出一个字符串, 带换行System.out.print(msg); // 输出一个字符串, 不带换行System.out.printf(format, msg); // 格式化输出println 输出的内容自带 \n, print 不带 \nprintf 的格式化

2021-08-21 16:45:07 472

原创 Java数据类型

主要介绍Java数据类型转化的一些需要注意的地方,Java运算符的知识以及字符集与字符编码的知识

2021-08-14 15:55:15 79

原创 初识Java

java语言特性1.简单性Java语法是C++语法的一个“纯净版本”,相当于对C++做了一个减法。这里没有头文件、指针运算(甚至指针语法)、结构、联合、操作符重载、虚基类等等。不仅如此,Java开发环境远远超出大多数其他编程语言的开发环境。2.面向对象在Java的世界里,一切皆对象。比如:人、狗、手机、电脑等都是对象。所谓面相对象,就是依靠对象之间的交互来完成事情,比如:人用手机网上购物,狗吃骨头…Java的面向对象特性与C++旗鼓相当,与C++的主要不同点在于多重继承。在Java中,取而代

2021-08-12 15:34:53 62

原创 宏定义详解

#define定义宏#define 机制包括了一个规定,允许把参数替换到文本中,这种实现通常称为宏(macro)或定义宏(define macro)。下面是宏的申明方式:#define name( parament-list ) stuff 其中的 parament-list 是一个由逗号隔开的符号表,它们可能出现在stuff中。注意: 参数列表的左括号必须与name紧邻。 如果两者之间有任何空白存在,参数列表就会被解释为stuff的一部分。#define DOUBLE( x) ( ( x )

2021-07-13 11:57:10 775

原创 文件操作函数

fopen函数FILE * fopen ( const char * filename, const char * mode );在打开文件的同时,都会返回一个FILE*的指针变量指向该文件,也相当于建立了指针和文件的关系。文件使用方式含义如果指定文件不存在“r”(只读)为了输入数据,打开一个已经存在的文本文件出错“w”(只写)为了输出数据,打开一个文本文件建立一个新的文件“rb”(只读)为了输入数据,打开一个二进制文件出错“wb”(只写)为了输

2021-07-09 16:19:52 50

原创 常见的动态内存错误

对NULL指针的解引用操作void test(){ int *p = (int *)malloc(INT_MAX/4); *p = 20;//如果p的值是NULL,就会有问题 free(p);}对动态开辟空间的越界访问void test(){ int i = 0; int *p = (int *)malloc(10*sizeof(int)); if(NULL == p) { exit(EXIT_FAILURE); } for(i=0; i<=10; i++) {

2021-07-02 00:29:58 59

原创 C语言实现通讯录

通讯录实现功能描述添加联系人的个人信息,删除联系人,清空通讯录。代码#pragma once#include<stdio.h>#include<assert.h>#include<string.h>#define MAX_NUM 10typedef struct person{ char name[10]; char sex[4]; int age; char tele[12]; char addr[20];}person;typedef

2021-07-02 00:14:04 76

原创 内存对齐及内存操作函数

结构体内存对齐规则第一个成员在与结构体变量偏移量为0的地址处。其他成员变量要对齐到某个数字(对齐数)的整数倍的地址处。对齐数 = 编译器默认的一个对齐数 与 该成员大小的较小值。VS中默认的值为8结构体总大小为最大对齐数(每个成员变量都有一个对齐数)的整数倍。struct S1{ char c1;//对齐数为(1和8中的最小值)1; 存于0(偏移量为对齐数的整数倍) int i;//对齐数为(4和8中的最小值)4; 存于4-7(偏移量为对齐数的整数倍) char c2;//对

2021-06-22 01:26:04 223

原创 C易错知识点

c语言const用法:const int a = 10;a = 999;//此时编译器会报错,因为const修饰变量不能发生改变const int a = 10;int * const p = &a;*p = 99;//此时不报错,只会有警告,但其余的语言会报错,C语言是弱类型语言。int b = 88;p = &b;//报错,const修饰的是p,所以p的值不能更改const int a = 10;const int *p = &a;//int const

2021-06-16 20:36:50 52

原创 C语言实现三子棋游戏

三子棋@TOC欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。新的改变我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:全新的界面设计 ,将会带来全新的写作体验;在创作中心设置你喜爱的代码高亮样式,Markdown 将代码片显示选择的高亮样式 进行展示

2021-06-09 00:44:09 110

原创 c语言学习

错误总结字符串问题#include <stdio.h>#include <string.h>int main(){ char arr[] = {'b', 'i', 't'}; printf("%d\n", strlen(arr)); return 0;}该题输出为随机值,strlen的功能是求字符串长度,从字符串开头往后检测,遇到/0终止关键字问题下面哪个不是关键字:( )。A.intB.structC.defineD.conti

2021-06-05 17:10:22 146

原创 2021-06-05

C语言中的static关键字static修饰局部变量延长了生命周期,在程序结束时才释放,只执行一次,运行一开始就开辟了内存空间。static修饰全局变量改变了作用域,使其只能在本源文件下使用。而不能用extern...

2021-06-05 16:29:31 42

原创 2021-05-27

起点我学的是信息与计算科学专业,以后想从事编程方面的工作,想做后台方向,以后要认真听课,课下及时复习,多动手敲代码。在编程上计划每周花费10小时学习编程,理想的IT公司是腾讯。...

2021-05-27 22:38:32 52

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除