您的位置:首页 > 编程语言 > Java开发

Java学习笔记2-一切都是对象

2017-05-09 21:00 344 查看
创建句柄:String s = "abc";创建对象:String s= new String("abc");
程序运行时数据可能保持的位置:寄存器(register):最快的,但是有编译器分配,我们没法控制堆栈(stack):存在于 RAM 区域,Java 对象句柄/引用和基础类型的变量值会存放在这里堆(heap):堆里分配存储空间会花掉更长时间,Java 对象实例和数组会保存在这里静态存储(static storage):RAM 中的固定位置,使用 static 关键字修饰的元素存储在这里常量存储(constant storage):存储在程序代码内部非 RAM 存储:如果数据完全存活于程序之外,那么它可以不受程序的任何控制,在程序没有运行时也可以存在
Java 的主要类型:
主类型类中定义的默认值大小最小值最大值封装器类型
booleanfalse1-bit--Boolean
char'\u0000'(null)16-bitUnicode 0Unicode 216-1Character
byte(byte)08-bit-128+127Byte[11]
short(short)016-bit-215+215 – 1Short1
int032-bit-231+231 – 1Integer
long0L64-bit-263+263 – 1Long
float0.0f32-bitIEEE754IEEE754Float
double0.0d64-bitIEEE754IEEE754Double
void---Void1
高精度数字的封装器类型:BigInteger 和 BigDecimal主类型如果在类中进行定义时,都有默认值,默认值如上表,但是如果在类之外进行定义,则会得到随机值,所以需要显性初始化主类型可以直接使用等号(=)的方式进行初始化,其他封装器类型或自定义类型则必须使用 new 关键字进行实例化
数组:Java 支持对于数组的处理,而且比 C++ 更安全
对象引用的作用域:花括号括起来的范围,花括号终点的地方会释放引用占用的内存对象的作用域:不受花括号限制,即使其引用被释放,对象也不会被释放,而是等到垃圾收集器检查到其不再被引用时进行释放
定义类:class ClassName{ //some code };实例化类:ClassName newClass = new ClassName();类里面可以包含数据和方法,引用类里面的数据和方法的方式是使用句点(.)和对象连接(比如 newClass.i)
定义方法:返回类型 方法名( /* 自变量列表*/ ) {/* 方法主体 */}Java 的方法只能作为类的一部分创建,调用方式也是和对象使用句点(.)进行连接方法支持使用参数
可以使用域名反转的方式来定义 Java 的 packageJava 消除了向前引用的问题,所以可以在前面引用后面定义的方法可以使用 import 关键字导入当前程序需要引用的类static 定义的方法和数据,可以不进行实例化就直接使用,比如 ClassName.i、ClassName.fun()
java.lang 类库默认导入了所有的类库中,所以不需要显示导入可以使用如下语句来达到暂停输出的效果:try {Thread.currentThread().sleep(5 * 1000);}catch(InterruptedException e) {}}
//这是一个单行注释/*这是一个多行多行注释*//**这是一个文档注释*/javadoc 只能为 public(公共) 和 protected (受保护)成员处理注释文档,命令行:javadoc -linksource xxx.java全路径所有类型的注释都支持嵌入 HTML可以使用特殊的标记引用其他类(加上超链接),如@see:引用其他类@version 版本信息@author 作者信息@param 参数信息@returm 返回值信息@exception 异常处理信息@Deprecated 过期说明信息类名的单词首字母全大写,变量和方法的首字母小写其他单词首字母大写

长按关注「我在编程」

多看 | 多想 | 多练不积跬步无以至千里
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Java storage register