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 的主要类型:
高精度数字的封装器类型: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 过期说明信息类名的单词首字母全大写,变量和方法的首字母小写其他单词首字母大写
长按关注「我在编程」
多看 | 多想 | 多练不积跬步无以至千里
程序运行时数据可能保持的位置:寄存器(register):最快的,但是有编译器分配,我们没法控制堆栈(stack):存在于 RAM 区域,Java 对象句柄/引用和基础类型的变量值会存放在这里堆(heap):堆里分配存储空间会花掉更长时间,Java 对象实例和数组会保存在这里静态存储(static storage):RAM 中的固定位置,使用 static 关键字修饰的元素存储在这里常量存储(constant storage):存储在程序代码内部非 RAM 存储:如果数据完全存活于程序之外,那么它可以不受程序的任何控制,在程序没有运行时也可以存在
Java 的主要类型:
主类型 | 类中定义的默认值 | 大小 | 最小值 | 最大值 | 封装器类型 |
boolean | false | 1-bit | - | - | Boolean |
char | '\u0000'(null) | 16-bit | Unicode 0 | Unicode 216-1 | Character |
byte | (byte)0 | 8-bit | -128 | +127 | Byte[11] |
short | (short)0 | 16-bit | -215 | +215 – 1 | Short1 |
int | 0 | 32-bit | -231 | +231 – 1 | Integer |
long | 0L | 64-bit | -263 | +263 – 1 | Long |
float | 0.0f | 32-bit | IEEE754 | IEEE754 | Float |
double | 0.0d | 64-bit | IEEE754 | IEEE754 | Double |
void | - | - | - | Void1 |
数组: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编程思想学习笔记--第二章 一切都是对象
- java 编程思想的学习笔记 - 第二章 一切都是对象
- Thinking in java学习笔记 第二章:一切都是对象
- 《Thinking in Java》学习笔记-----第2章 一切都是对象
- thinking in java 第三版 学习笔记(第2章 一切都是对象)
- Java编程思想学习笔记——一切都是对象
- Java学习笔记——一切都是对象
- [Java编程思想-学习笔记]第2章 一切都是对象
- 【笔记】Java编程思想—一切都是对象
- Java编程思想第四版学习笔记(1)一切都是对象
- thinking in java 笔记 思维导图 第二章一切都是对象
- 【Thinking In Java】笔记之一 一切都是对象
- Thinking in Java 笔记(第二章 一切都是对象)
- thinking in java 阅读笔记 第二章 一切都是对象
- thinking in java 阅读笔记 第二章 一切都是对象
- thinking in java 阅读笔记 第二章 一切都是对象
- 【学习笔记】《Java编程思想》——第二章 一切都是对象
- 《Java编程思想》学习记录仪一 -- java中参数传递方式(第二章一切都是对象)
- thinking in java 阅读笔记 第二章 一切都是对象
- thinking in java 阅读笔记 第二章 一切都是对象