java游戏初始化参数过多,从头认识java-4.6 成员的初始化
这一章节我们来讨论一下成员的初始化。
之前已经提到,如果是属性域,编译器会默认初始化,这一章节不再展开,这里我们需要注意的是局部变量。
局部变量必须初始化,不然直接报错。
下面是错误的代码:
package com.ray.ch01;
public class Test {
public static void main(String[] args) {
int i;
i++;
}
}
在i++这里编译器会提示没有初始化变量。
1.指定变量初始化
我们下面给出几种指定初始化的方法。
(1)直接初始化,直接为属性域赋值
package com.ray.ch01;
public class Test {
private int id=0;
}
(2)通过方法返回
package com.ray.ch01;
public class Test {
private int id = initId();
private int initId() {
return 0;
}
}
package com.ray.ch01;
public class Test {
private int id = initId(0);
private int initId(int id) {
return id;
}
}
(3)通过new来初始化
package com.ray.ch01;
public class Test {
private Book book = new Book();
}
class Book {
}
如果不创建book对象就直接使用,在运行时会抛异常。
(4)注意执行顺序,保证作为参数的成员已经初始化
正确的代码:
package com.ray.ch01;
public class Test {
private int id = initId();
private int initId() {
return 0;
}
private String name = initName("name-"+id);
private String initName(String name) {
return name;
}
}
错误的代码:
package com.ray.ch01;
public class Test {
private String name = initName("name-"+id);
private String initName(String name) {
return name;
}
private int id = initId();
private int initId() {
return 0;
}
}
两个代码完全一样,只是调换了一下位置,在错误的代码里面,id就报错,id没有被初始化。
总结:这一章节我们讨论了成员的初始化,特别是局部变量和初始化的几种方法。
这一章节就到这里,谢谢。
-----------------------------------
版权声明:本文为博主原创文章,未经博主允许不得转载。
java游戏初始化参数过多,从头认识java-4.6 成员的初始化相关推荐
- C++笔记之结构体内对vector初始化,一般初始化,和类内私有vector类型成员变量初始化
C++笔记之结构体内对vector初始化,一般初始化,和类内私有vector类型成员变量初始化 文章目录 C++笔记之结构体内对vector初始化,一般初始化,和类内私有vector类型成员变量初始化 ...
- java游戏服务器的开发和维护,java游戏服务器开发
java游戏服务器开发 内容精选 换一换 开发者基于Atlas 200 DK进行AI应用开发前,需要在制作SD卡时准备的Ubuntu服务器中部署开发环境,有以下两种场景:部署MindStudio,基于 ...
- java游戏开始被流星_用 JAVA 开发游戏连连看(之一)动手前的准备
JAVA ,相信大家也不会陌生了吧, JAVA 是一门相当优秀的语言.目前 JAVA 领域 J2EE . JSP . STRUTS 等技术不知有多么的热门,他们的主要用途是用来进行企业开发, J2ME ...
- 无比乐java游戏_传智播客Java JavaEE+物联网云计算 就业班
课程主要内容: xml&dom_sax_dom4j编程(梁桐) java基础加强(增强for循环.可变参数.枚举.装箱拆箱.静态引用.注解.类反射[通过构造器实例化对象].泛型的定义与使用)( ...
- java 内存分配参数_浅谈JAVA内存分配与参数传递
java中方法的参数传递方式只有一种:值传递. java内存分配: 1.栈:存放 基本类型的数据.对象的引用(类似于c语言中的指针) 2.堆:存放用new产生的数据 3.静态域:存放在对象中用stat ...
- Java游戏用户登录注册_用java类模拟游戏的账号的登陆,注册,退出。 1.没有账号,需要注册。 2.注册完成后方可登...
展开全部 /** 需求:奖客富翁游戏.62616964757a686964616fe4b893e5b19e31333337386564 菜单为: 1.注册用户信息.填写用户名,密码,电脑随机输出一个4 ...
- java 方法当参数_如何在Java中将函数作为参数传递?
如何在Java中将函数作为参数传递? 这个问题在这里已有答案: Java Pass方法作为参数 14个答案 是否可以将方法作为参 ...
- java 不定长参数_简单介绍Java的不定长度参数
本文版权归作者所有,仅供用来网上学习来用,读者可以收藏,请不要下载到本机和重新发布到其它网站 先看两个简单的例子,来感受一下Java的不定长度参数 第一个例子: public class VariAr ...
- java 方法 多参数_需要在Java方法中传递多个(20+)参数。这样做有效吗?
我在Java类中有多个方法,其中每个方法都有20多个参数.我将在另一个类中为这个类创建一个对象并调用每个方法.通常我在Selenium Java中使用POM(页面对象模型). 所以在每个Page对象类 ...
最新文章
- 构建自己的PHP框架--构建缓存组件(1)
- 兼容IE和FF的js脚本做法(比较常用)[问题点数:20分]
- DHCP***的防御处理总结
- iOS下载大文件原理解析一
- JavaScript中的两个等号(==)和三个等号(===)
- MOQL—筛选器(Selector)(二)
- 什么是共享读锁和排他写锁?
- SCI期刊分区-JCR分区 中科院分区
- 用python写问答机器人_机器人之Python入门到实践-问答机器人
- 力度更大的当当购书优惠来了!实付满200-50!
- 腾飞之势,搏击苍穹:网页设计
- 人生苦短,你一定要成为你自已想成为的那个人
- 从金蝶云星空到旺店通·旗舰奇门通过接口配置打通数据
- IM互通新方案-GTalk to VoIP回拨服务
- 详解Android Selinux 权限及问题
- 阿迪、耐克过去式,李宁、安踏、特步现在时
- Greenplum数据库中master节点恢复
- 数学:SVM(2)点到直线距离
- Kali WIndows 漏洞利用基础篇 (探索目标主机漏洞)
- 来到新公司感想与学习。
热门文章
- OpenGL第六节:加载png图片
- ASP.NET 实现上传EXCEL,利用NOPI操作,转换得到DataTable
- BZOJ 1037 [ZJOI2008]生日聚会Party(单调DP)
- 关于Object[]数组强转成Integer[]类型的数组.
- vimnbsp;自动识别UTF8和GB2312
- 进程/线程同步的方式和机制,进程间通信
- [转载] Python学习(五)Numpy通用函数汇总
- FPGA芯片手册阅读技巧
- day006bootstrap的简单学习 + 轮播图
- GIT 查看/修改用户名和邮箱地址