首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

java方法参数是基本类型引用类型区别

方法参数是基本类型时,传递是值。 ...方法参数是引用类型时,传递是内存地址值 当参数是基本类型时,调用方法时将值传递到方法,运行方法,运行结束方法退出,对原本main定义变量没有任何操作(方法没有return)。...当参数是引用类型时,比如:定义数组时,堆内存存储了数组数据,返回这组数据地址给了数组名,然后调用方法时,传递也是这个地址。...方法,同样也是根据这个地址找到数组信息,然后改变了这个数据,所以之后main方法输出时,输出是改变了之后数组。即:此时跟栈堆有关系,栈可以弹栈,堆内存不能弹出。...也就是说 ,当形式参数是基本类型时,方法只是值,实际上main 里实际参数外部方法形式参数是不同两个东西,如果方法不返回值,change里不管怎么改变,与main无关。

1.4K20

规范JavaScript注释

以下字段并不是全部,全部请参考JSDoc中文文档或JSDoc中文文档 常用注释关键字 注释名 语法 含义 示例 @param @param 参数名 {参数类型} 描述信息 描述参数信息 @param...// 初始化value变量为0 var value = 0; 注释示例 参数返回值类型Type:string、boolean、number、object、array、function 基本方法块注释...类属性变量都会生成到jsdoc文档Member模块类中使用属性标识 var LBSControllerCom = Com.extends({ /** * @member...* @param {参数1类型} 参数参数描述 * @param {参数1类型} 参数名=1 默认值参数 * @param {参数1类型} [参数名] 可选参数 * @returns {...* @param {参数1类型} [参数名] 可选参数 * @returns {Type} 函数返回值描述 *//** * @class * @classdesc 这是对myClass类描述

12.3K53
您找到你想要的搜索结果了吗?
是的
没有找到

检查JavaScript文件_TypeScript笔记18

里存在大量惯用“模式”,所以默认类型方面相当宽松,主要表现为 3 点: 函数参数默认可选 未指定类型参数默认any 类型宽松对象字面量 函数参数默认可选 .js文件里所有函数参数都默认可选,所以允许实参数量少于形参...标注,上例greeting必填,somebody可选,因此无参 3 参会报错 特殊,ES6 可以通过默认参数不定参数来隐式标记可选参数,例如: /** * @param {string} somebody...,类型系统会综合这些信息进行推断 未指定类型参数默认any JavaScript 没有提供用来表示泛型参数语法,因此未指定类型参数都默认any类型 泛型 JavaScript 主要以 2 种形式出现...: React.ReactNode; }> 因为.js里没有指定泛型参数类型时,默认为any,所以不报错。...对于没在构造函数定义,或者构造函数类型为undefined或null(此时为any)属性,其类型为所有赋值右侧值类型联合 定义构造函数属性都认为是一定存在,其它地方(如成员方法)出现都当作可选

2.4K50

使用JSDoc提高代码可读性

可以先来看一个普通 JavaScript 文件在编辑器展示效果: ? 很显而易见,编辑器也不能够确定这个函数究竟是什么含义,因为任何类型两个参数都可以进行相加。...而多行写法是比较常用 vscode 可以直接在函数上方键入 /** 然后回车,编辑器会自动填充很多内容,包括参数类型参数描述以及函数描述预留位置,使用TAB键即可快速切换。 ?...必然会存在着大量复杂结构类型变量、参数或返回值。 关于函数参数 JSDoc 两种方式可以描述复杂类型: ?...如果我们想要表示一个参数可选参数,可以参数名上包一个[]即可。.../** * @param {number} [param] 描述 */ function test (param) { } 同事文档还提到了关于默认值写法,实际上如果你可选参数参数位已经有了默认值处理

1.4K20

JSDoc支持_TypeScript笔记19

Compiler,更多相关讨论见Add support for @template JSDoc 三.类型标注语法 TypeScript 兼容 JSDoc 类型标注,同时也支持 JSDoc 标记中使用...| boolean} */ var sb; 二者等价,只是语法略有差异 跨文件类型引用 特殊,能够通过import引用定义在其它文件类型: // a.js /** * @typedef Pet...*/ function f(p1) {} 而可选参数有 3 种表示方式: /** * @param {string=} p1 - 可选参数(Closure语法) * @param {string}...[p2] - 可选参数JSDoc语法) * @param {string} [p3 = 'test'] - 有默认值可选参数JSDoc语法) */ function fn(p1, p2, p3...具体,会对构造函数this属性访问以及构造函数参数进行检查,并且不允许(不通过new关键字)直接调用构造函数: /** * @constructor * @param {number} data

4K10

JSDoc 初探:代码内文档标记

假设你想要记录诸如模块、名称空间、类、方法方法参数等内容。 JSDoc注释通常应该放在记录代码之前。为了被 JSDoc 解析器识别,每个注释必须以 /** 序列开头。...阅读使用第三方库时,可以通过查看JSDoc生成文档来了解函数方法使用方式、参数、返回值等信息。...JSDoc,可以使用各种标签来描述代码不同方面,例如:@param:用于描述函数或方法参数类型含义;@returns:用于描述函数或方法返回值类型含义;@throws:用于描述函数或方法可能抛出异常类型含义...使用=标记具有默认值参数or可选参数JSDoc,可以使用 = 符号来标记具有默认值参数。具体来说, @param 标签后面添加一个参数默认值,用 = 符号连接即可。...需要注意是,JSDoc中标记参数具有默认值并不会改变函数或方法实际调用方式,你可以只注释写好标记默认参数,而不写在代码,反之亦然(君子协定)。

13510

TS in JS 实践指北

*/就是一个典型 JSDoc 语法。其中@param表示该方法接收一个名为namestring类型参数。...支持 JSDoc IDE 当中,比如 VSCode WebStorm使用这个方法 hover 时候还会给出比较友好提示。 ?...我们来看下他们返回值是什么类型: ? type demo 可以看到,拥有@paramfoo函数返回出来参数也是 string 类型,而bar函数返回是 any。...JSDoc 为函数补充了入参类型,使得 IDE 能够识别出来函数入参出参关系。 另外一方面,函数内部,有了入参类型foo函数参数name,IDE 给了它提示string内方法能力。 ?...JSDoc JS 中有一个非常好优势。 TS 有关能力,「直跳」这个行为大部分时候会定位到代码声明位置,而不是定义位置。

4.4K20

VScode JS 智能提示弱爆了?但是我有办法!

02 IDE智能提示是啥? VScode效果(没有加JSdoc) ? 代码是用严格模式来写js游戏项目(如果读者们有需要,有机会会拿出来分享)。...2、那我们来测试第二步,同样是ServerRequest,同样是已经暴露出来createWxReconnectView,输入.cr时候,因为没有调用过,并没有产生过“记录”,所以VScode是能成功提示...04 WebStorm一些常用功能设置 1、快速给文件、方法、字段添加注释 ? 2、鼠标放到字段名或者方法名上时显示这些注释 ? 3、忽略不需要显示文件类型与文件夹 ?...等等一些常用使用方法,有机会再介绍。 05 WebStorm与VScode哪个好? 1、如果项目是纯TS开发,两个IDE功能体验上区别不大。...VScode+JSDoc+d.ts配置会比装WebStorm麻烦,同时提示起来也没有WebStorm体验好 3、WebStorm开发CocosCreator项目,只要把creator.d.ts文件放到项目中

5.7K30

大话 JavaScript(Speaking JavaScript):第二十六章到第三十章

HTML 您可以 JSDoc 注释自由使用 HTML。例如,显示单词等宽字体。 类型注释 您可以通过大括号类型名称来记录实体类型。...前者名称总是以小写字母开头;后者名称总是以大写字母开头。换句话说,基本类型类型名称是boolean、numberstring,就像typeof运算符返回结果一样。...例如: @since 10.2.0 文档化函数方法 对于函数方法,您可以记录参数、返回值可能抛出异常: @param {paramType} paramName description 描述了参数名称为...类型描述是可选。以下是一些例子: @param str The string to repeat....、参数实例属性: @type {typeName} 所记录变量类型是什么

12310

【译】不是 TypeScript TypeScript -- JSDoc 超能力

目录 带有JSDoc注释TypeScript 激活检查 内联类型 定义对象 定义函数 导入类型 使用泛型 枚举 typeof 从类扩展 带有 JSDoc 注释 TypeScript 最优情况下,...类型有很多很多,比评论几种基本类型更多。结果就是使用 JSDoc 类型可以让你走得很远。...请添加 @ts-ignore 标志: // @ts-ignore addVAT('1200', 0.1); // would error otherwise 内联类型 定义参数时候,希望确保尚未分配变量具有正确类型...定义对象 除了基本类型 JavaScript 还经常使用到复杂类型对象,这种情况对基于注释类型注释也没有问题: /** * @param {[{ price: number, vat: number...此外,TypeScript 可以识别名称为 Article Article,从而在 IDE 中提供更好信息。 请注意名为sold可选参数

3.1K30

【js】如何正确写代码注释?

、易维护、易理解,起到提示作用,上面的两个注释都是正确,但是它起到作用太低了,正式工作我们往往会协同开发,这种注释是万万不可。...正确注释 正确注释 就是文档注释,先来看看是什么样子。...优点 方法提示 time是个字符串 我们要截取字符串 普通注释 文档注释 内容提示 鼠标移动到函数以及参数上所给提示。...普通注释 文档注释 这种提示就像嵌代码在里面一样,而不是浮于表面了,我们书写npm包时候,用户使用我们包,就能看到这种提示,对使用者特别友好。...npm install jsdoc -g 基本使用 jsdoc 文件名 其他使用方式可以去官网查看 jsdoc 33.js 执行完此命令,会生成一个out文件夹,查看里面的index页面即可,右边侧边栏会显示函数使用

16720

d.ts

结构,要求参数setting具有greeting以及可选durationcolor属性,类型分别为字符串、数值、字符串 类型别名 type GreetingLike = string | (()...greeting以及成员方法showGreeting 五.实践规范 除了遵循基本语法格式外,实践还应该遵守这些规范约束: 用基础类型(number, string, boolean, object)...,不要用包装类型(Number, String, Boolean, Object) 不要出现未使用泛型参数,会导致类型无法正确推断 无返回值callback参数返回类型用void,不要用any callback...可选参数没必要在类型上标出来,因为callback允许少传/不传参数 函数重载需要注意声明顺序,应该从特殊到一般自上而下排列(例如any会短路其它重载声明,类似于模式匹配机制) 能用可选参数(如two...所以,得到API列表肯定全,但参数类型JSDoc等就无能为力了,算是一种取舍: This means no matter how the object was written, anything,

2.8K30

TypeScript基础总结

TS里原始类型包括string, numberboolean,这些也是JS原始类型。...另外,TS接口描述变量时可以使用?定义某个变量为可选变量。比如对某个对象进行约束时,如果对象某个属性设置成了可选,则传入对象可以不包含这个属性。...特点: 抽象类不能直接实例化,即不能通过 new X()方式调用。 抽象类必须包含一些抽象方法,抽象方法也用 abstract修饰 抽象类抽象方法不包含具体实现,但是必须在派生类实现。...值得一提是:抽象类接口描述类类型时,虽然比较类似。但是抽象类只能继承一个抽象类或者一个接口,而接口可以多重继承。 装饰器 Decorator是一个函数,用来修饰类、属性、方法参数。...Decorator 改变是在编译期改变,而不是运行期。装饰器包括多个规范,TC39stage-0 stage-2分别定了修饰属性、方法规范修饰类规范。

98910

为你 JavaScript 项目添加智能提示类型检查

前言 最近在做项目代码重构,其中有一个要求是为代码添加智能提示类型检查。智能提示,英文为 IntelliSense,能为开发者提供代码智能补全、悬浮提示、跳转定义等功能,帮助其正确并且快速完成编码。...= {a: true}; x.b = false; x. // <- 由于 type 声明,"x" 将被提示含有属性 a,b 以及 c JSDoc 最常见使用是为函数参数声明类型,使用 @param...不严格地来说,ts 类型声明文件就像用 TypeScript 语法将 JSDoc 注释重写了一遍并提取到了单独文件。...VSCode 更是将二者作了融合,当你二者混用时候,可以直接在 JSDoc 注释中直接使用 ts 类型声明文件定义 interface class 等。...另外, VSCode 类型检查并非默认开启,这意味着即使你有详尽 JSDoc 注释或 ts 类型声明文件,依然可能在数据类型上栽跟头。

3.2K20
领券