- 博客(32)
- 资源 (2)
- 收藏
- 关注
原创 C++函数传递数组方法及原理刨析
比如定义了一个数组变量,编译器就会在内存中划分了一块地址空间给它,数组名这个指针常量就指向了这块内存空间的首地址,而数组首元素就存在这段内存空间的首地址处,即这段内存空间的首地址跟数组首元素的内存地址是一样的。上面两种写法都是正确的,之所以推荐用第一种写法,因为可读性更好一些,别人一眼就知道参数a是一个数组,而第二种写法不能直接看出a这个参数的意义。因为数组名字本身就是一个指针,它是一个指针常量,指向的地址不变。
2023-09-07 19:43:16
1183
原创 为什么要写一门关于C++的教程
我想写一门关于C++的教程最大的原因是源于一次意外,我曾经写过一点教程,忽然有一天,有一个班的学生集体加我公众号,问了一下原因,原来是他们老师让加的,觉得我写的东西对他们学生有用!我突然意识到,我所掌握的东西,是很多学校的老师无法传授给学生的因为我自身是一名算法工程师,C++是我的必备语言,和这门语言打交道已有8年之久,积累了很多工程经验,这正是学校的短板!距离我当时学习C++已经过去很多年,这门语言也在一直发展,出现了一些新的用法,网上也有很多人在写相关的博客,但是我总觉得没有讲出王老师的精髓!
2023-09-05 11:03:46
132
原创 总结Java基本数据类型与引用数据类型
啥是数据类型?如果把Java程序比作一座高楼大厦,数据类型就是建造这座大厦的小砖头。想要搬好砖头,先了解一下我们的砖头长啥样。1、基本数据类型介绍Java程序中一共有8种基本数据类型基本类型大小取值范围包装器类型boolean-true/flaseBooleanchar16-bit0~65535Characterbyte8 bits-128~+127Byteshort16 bits-32768~32767Shortint.
2021-05-30 11:28:00
2002
44
原创 “注释”是程序员的自我修养
开篇引言公司早会上,项目经理怒气冲冲,大声质问:“这么明显的BUG,谁TM写的,还没有注释,给我查SVN的提交记录,扣除这个程序员的KPI”项目组的小码农们紧张的空气都凝固了,害怕被揪出来是自己写的。小王:“经理,我正在查。。。”过了几分钟。小王,一脸震惊,口中嘟囔着说:“这不可能吧?怎么会是他?”众人凑过去一看,错误代码竟然是项目经理两年前自己提交的!当初要是写上注释,何必今日这么尴尬呀!今天就跟大家聊一聊代码注释!注释是在程序中添加的说明性信息,方便程序员更好的阅读代码。本文先介绍一.
2021-05-25 10:03:56
1887
36
原创 IDEA创建HelloWorld!职业生涯的第一行代码
开篇引言你还记得自己如何走上Java开发职业道路的吗?这一路又是经历了多少欢喜与心酸?第一次编写Java代码是什么样的心情?是否还能回忆起自己职业生涯的第一行代码?这篇文章的主要目的是教会大家使用IDEA创建工程,介绍Java里的最简单也是最经典的的入门程序Hello World。1)打开IDEA软件,执行下面操作File -> New -> Project2)配置项目注意:没有配置SDK的小伙伴,在【Project SDK】后面选择自己安装的JDK目录3)填写项目名称和存.
2021-05-25 08:48:32
268
2
原创 配置JDK环境变量
小伙伴:大队长,能不能教我一招,让我在妹子面前表现得像个技术大牛?大队长:我这里还真有一招!【一脸贱笑】小伙伴:说来听听。【半信半疑】大队长:普通人用电脑,需要鼠标点来点去的,今天就教你一招,直接用CMD命令操控电脑。前面的文章介绍了如何安装JDK,这篇文章给大家首次展示一下JDK的威力哈。JDK的核心功能是帮助我们开发编译Java程序,我们安装好的JDK如何使用呢?今天就使用CMD(命令提示符)命令给大家展示一下。上面的步骤操作完,会出现下面的黑色窗口,这就是传说中的CMD窗口,继续跟我一.
2021-05-18 22:59:07
244
9
原创 JDK下载和安装教程
开篇引言1996年,JDK1.0版本诞生了,现在走过了25个年头,已经算是比较“古老”的语言了,它有很多“信徒”,每天都在用自己的方式改变着这个世界!每一个Java程序员都是从安装JDK开始的吧!我第一次安装JDK的时候还是window xp系统,那时候还是一名懵懵懂懂的大学生,再回首,我们都已不再是少年。不聊废话了,开始正题。1、下载JDK首先,我们要到Oracle网站上去找我们的小宝贝(JDK安装包),下载网址贴上来:https://www.oracle.com/java/technologi.
2021-05-16 22:27:32
368
2
原创 JDK、JRE和JVM之间的关系
开篇引言面试官:把大象装冰箱里需要几步?应聘者:三步,第一步把冰箱门打开;第二步把大象放进去,第三步把冰箱门关上!【心里窃喜,太简单了】面试官:厉害了哈!?回答一下,开发Java程序需要几步?【小样的,我就不信难不住你!】应聘者:。。。【心里默念TMD,开发Java程序那么复杂,我怎么知道有多少步,你这是在难为我啊!】面试官:也是三步啊,第一步编写代码,第二部编译程序,第三步运行程序。【奸诈的一笑】应聘者:靠!我竟无力反驳!在解释JDK、JRE和JVM之间的关系之前,我...
2021-05-13 10:33:53
291
11
原创 浅谈Java的诞生和现状
传说,在二十世纪90年代,一个叫Sun的公司,成立了一个项目小组,专攻计算机在家电领域的嵌入式应用。这个小组里的几位大佬,发现C++过于复杂和庞大,自己搞起了改造,开发了一种称为Oak的面相对象语言。在申请商标的时候,发现已经被注册了,他们想了一系列的名字,最终,就在喝一种Java咖啡的时候,无意间提到Java,大家一致通过了。这事要是发生在我国东北地区,我更愿意相信现在的Java会叫“二锅头”!酒是好酒,就是有点上头啊!以上传说纯属事实,Java就是这样神奇诞生的。本文将和大家聊一聊,如今Java江湖
2021-05-12 14:02:19
130
2
原创 IDEA只需3步轻松集成tomcat
本文记录了作者使用IDEA集成tomcat的全部过程,下文配有每一步操作的详细截图和讲解,欢迎有兴趣的朋友继续阅读。1、前期准备1.1 tomcat介绍tomcat是一个免费、开源的轻量级web服务器。对于初学者,可以这样认为,tomcat就是一个空白的网站服务器,程序员可以使用代码增加自己的网站内容。因为tomcat性能稳定、技术先进而且免费,是目前最流行的web服务器,也是Java工程师必备技能。1.2 tomcat下载下载地址:http://tomcat.apache.org/
2021-04-30 14:24:13
7350
1
原创 集合与数组有什么区别?ArrayList如何使用?即刻发车,请坐好小板凳。
当你在设计程序的时候,分不清应该使用集合还是使用数组,你要注意了!两句话就可以解释清楚集合与数组的区别,请看下文集合类的特点:提供一种存储空间可变的存储模型,存储的数据容量可以改变 数组的特点:数组和集合都是存储数据的容器,数组的存储容量是固定的...
2021-04-25 09:47:34
157
2
原创 快速理解Java中的对象数组
假如我们现在有个需求:将(张三,23)(李四,26)(王五,31)封装为3个学生对象并存入数组,随后遍历数组,将学生信息输出在控制台。思路:定义学生类用于封装数据动态初始化长度为3的数组,类型为Student类型根据需求创建3个学生对象将学生对象存入数组遍历数组,取出每一个学生对象调用对象的getXxx方法获取学生信息,并输出在控制台...
2021-04-23 08:50:29
155
1
原创 全面总结Java中继承的使用方法和注意事项(附示例代码)
继承是所有OOP语言和Java语言不可缺少的组成部分。当创建一个类时,一定会继承其他的类,即使自己没有定义继承任何父类,Java语言也会隐式的继承Java的标准根基类Object。
2021-04-20 19:19:05
958
8
原创 从JVM的视角深度解析String和StringBuilder的区别
字符串操作是程序设计中最常见的行为,Java语言中使用最广泛的字符串类是String类(还不知道String类的同学请看我之前的博客)。很多初级程序设计,一个String类完成贯穿整个项目,但是,当我们想提升程序运行效率,提升程序设计水平的时候,我们需要深度理解另一个字符串类SringBuilder。本文利用了反编辑,从JVM字节码的视角,深度探讨了String和StringBuilder的区别和应用场景。1、不可变的String查看JDK文档可知,String对象是不可变的,如果对字符串进行拼接操
2021-04-17 20:37:17
1068
7
原创 Java里的String类使用方法总结
1、String概述String类代表字符串,Java程序中所有字符串文字(例如“abc”)都被实现为此类的实例,也就是说,Java程序中所有的双引号字符串,都是String类的对象。2、字符串的特点字符串不可变,它们的值在创建后不能被更改 虽然字符串的值是不可变的,但是它们可以被共享 字符串效果上相当于字符数组(char []),但是底层原理是字节数组(byte[])3、字符串初始化方法字符串的初始化方法非常多,有兴趣的小伙伴可以去看Java JDK的API官方文档,文末给出次文档获
2021-04-16 11:25:00
318
原创 Java-JDK1.9 API 帮助文档-中文版本
给大家分享一个很好用的Java-JDK1.9 API 帮助文档-中文版本。/****************************************************************************************** * 有需要的小伙伴,欢迎关注我的公众号【码农充电站】,回复【jdk】获取文档网盘地址 * 公众号:码农充电站 * 作者微信:it1529577 *****************************************.
2021-04-15 14:39:31
1987
1
原创 站在编译器的角度理解this关键字
this关键字在Java语言里非常重要,也是一个高频使用的关键字,但是很多人并不理解this关键字的真正含义,只是简单机械的使用。本文将带你从编译器的视角,深度解读this关键字,知其然,并知其所以然。
2021-04-11 11:47:29
1173
12
原创 总结构造方法的作用和注意事项
构造方法是类的一个特殊方法,它的主要作用是完成对象数据初始化。1、构造方法的格式public class 类名{ 修饰符 类名(参数){ }}2、默认构造方法如果没有定义构造方法,系统将给出一个默认的无参构造方法。请看下面代码:3、自定义构造方法4、重载构造方法5、推荐使用方式...
2021-04-09 21:49:14
478
原创 一分钟看懂成员变量和局部变量的区别
本文从多个角度分析了成员变量和局部变量的区别,先介绍一下定义成员变量:类中方法外的变量 局部变量:方法中的变量举个例子,请看下面的代码public class Book { String bookName; //成员变量 Integer price; //成员变量 public void lendBook(){ boolean state = true; //局部变量 System.out.println("借书成员方法");
2021-04-08 13:40:10
269
2
原创 一文读懂Java对象的内存分配(附图详解)
本文重点介绍创建对象和使用对象的内存分配问题,我尽量用简单的方法帮助大家理解new语法背后的内存逻辑。我们来先介绍两个概念:栈内存:位于通用RAM(随机访问存储器)中,程序通过栈指针可以直接获取到存储在栈内存中的数据,运行效率仅次于寄存器。 堆内存:一种通用的内存池(也位于RAM区),用于存放所有的Java对象,运行速度要比栈内存花费更多的时间。概念是抽象的,不是很好理解,接下来通过一个具体的小案例,来揭开内存分配的神秘面纱。假如我们要设计一个图书管理系统,因此需要创建一个图书类publi
2021-04-07 10:23:25
2171
4
原创 一分钟了解Java里类和对象的关系
本文重点从实际项目的角度,简单易懂的解读Java里的类和对象1、首先介绍两个概念类:类是对现实生活中一类具有共同属性和行为事务的抽象,确定对象将会拥有的属性和行为。 对象:对象是类的一个实例(对象不是找个女朋友),有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。概念比较抽象,我们来讲一个具体的项目开发场景,来理解类和对象。假如,我们现在要开发一套图书管理系统,我们如何在程序里面表示出一本书呢?这个时候就用到了类的概念,我们可以定义一个表示书的数据类型
2021-04-06 08:44:28
808
6
原创 Java里的基本数据类型总结
Java要确定每种基本类型所占存错空间的大小,和每种类型的取值范围。它们的大小是固定的,不受机器人硬件架构和操作系统的影响。这也是Java具有良好移植性的原因之一。Java数据类型 基本类型 大小 最小值 最大值 包装器类型 boolean - - - Boolean char 16-bit 0 65535 Character byte 8 bits -128 +127 Byte short
2021-04-05 09:06:14
179
原创 2020版IDEA安装教程
1、IDEA安装包下载地址:https://www.jetbrains.com/idea/2、选择版本:建议使用付费版本,免费版本缺失重要功能。(文末提供注册码,亲测有效!)3、双击安装4、选择下一步即可5、设置程序安装目录,注意路径不要有中文,避免不必要的麻烦。6、安装选项设置Create Desktop Shortcut:创建桌面快捷方式,根据操作系统选择; Update context menu:鼠标右键添加“打开文件夹作为项目”选项,看个人需要; Cr
2021-04-04 11:27:29
7157
2
原创 IDEA创建HelloWorld
如果你已经安装好了IDEA,本文将介绍如何快速创建一个HelloWorld项目,初次体验Java编程,废话不多说,直接上图片输入代码:public class HelloWorld { public static void main(String[] args){ System.out.println("Hello world"); }}/********************************************
2021-04-04 00:50:37
624
原创 为什么要学习C++
我想写一个关于C++基础知识的系列博客。在此之前,我想很想说明一个问题,那就是为什么要学习C++?C++,作为存在了20多年的语言,在TIOBE排行榜上也几乎一直位于前五的位置 ,回望这几年,各种新语言层出不穷,那么,C++为什么一直保持着无可撼动的地位?| C++在人工智能领域有重要地位古话说:“男怕入错行,女怕嫁错郎1” 人工智能这个行业的前景我就不用多介绍了。在人工智能的机...
2020-03-06 19:00:40
1844
原创 Asp.Net Session生命周期
Asp.Net中的Session与Cookie最大的区别在于:Cookie信息全部存放于客户端,Session则只是将一个ID存放在客户端做为与服务端验证的标记,而真正的数据都是放在服务端的内存之中的。 在传统web编程语言(比如asp)中,session的... Asp.Net中的Session与Cookie最大的区别在于:Cookie信息全部存放于客户端,Session则只是将一个ID存...
2018-02-27 15:35:15
1632
原创 SQL 语句后面的分号
某些数据库系统要求在每条 SQL 命令的末端使用分号。在我们的教程中不使用分号。分号是在数据库系统中分隔每条 SQL 语句的标准方法,这样就可以在对服务器的相同请求中执行一条以上的语句。如果您使用的是 MS Access 和 SQL Server 2000,则不必在每条 SQL 语句之后使用分号,不过某些数据库软件要求必须使用分号。博主自己创建了一个论坛:推呗论坛,一个专业的IT资源分...
2018-01-30 15:28:49
3980
原创 无法在web服务器上启动调试。
遇到问题:解决办法删除web.config中的targetFramework="4.0"即可<!-- 有关如何配置 ASP.NET 应用程序的详细信息,请访问 http://go.microsoft.com/fwlink/?LinkId=169433 --> 博主自己创建了一个论坛:竹林论坛,一个专业的IT资源分享网站,里面各种最新的I
2018-01-30 14:51:07
1319
原创 Update 语句
Update 语句Update 语句用于修改表中的数据。语法:UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值Person:LastNameFirstNameAddressCityGatesBillXuanwumen 10Beijing
2018-01-29 15:45:15
2748
原创 SQL CREATE DATABASE 语句
CREATE DATABASE 语句CREATE DATABASE 用于创建数据库。SQL CREATE DATABASE 语法CREATE DATABASE database_nameSQL CREATE DATABASE 实例现在我们希望创建一个名为 "my_db" 的数据库。我们使用下面的 CREATE DATABASE 语句:CREATE DATABAS
2018-01-29 15:35:57
2212
原创 PHP语言学习路线以及PHP语言相关介绍
PHP在IT变革中扮演着什么样的角色?PHP作为非常优秀的、简便的Web开发语言,和Linux、Apache、MySQL紧密结合,形成LAMP的开源黄金组合,不仅降低使用成本,还提升了开发速度,满足最新的互动式网络开发的应用,这使得PHP软件工程师成为一个发展迅速的职业。PHP作为免费开源代码的网站开发技术,相对入职门槛较低,有一定的英文和数学功底即可以学习而且能够顺利上岗。PHP语言特点
2018-01-25 00:06:07
462
原创 SQL数据类型
SQL 数据类型Microsoft Access、MySQL 以及 SQL Server 所使用的数据类型和范围。Microsoft Access 数据类型MySQL 数据类型在 MySQL 中,有三种主要的类型:文本、数字和日期/时间类型。Text 类型:Number 类型:* 这些整数类型拥有额外的
2018-01-24 16:52:33
476
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人