Java - Thinking in Java 第2章 一切都是对象
Java是”纯粹”的面向对象的语言.
操作的标示符是对象的一个引用, new是创建一个对象.
存储位置: 寄存器\堆栈(引用)\堆(new)\常量存储(程序代码内部)\非RAM存储(流对象和持久化对象).
基本类型: 存储空间大小不变性(便于移植) - 自己主动包装功能.
高精度数字: BigInteger(随意精度的整数), BigDecimal(随意精度的小数).
数组初始化: 对象数组均设置为null, 使用引用会执行时报错, 基本类型数组均内存置0.
Java是自由格式(即“{}”作用域), 由new创建对象.
Java有一个垃圾回收器, 用来监视用new创建的全部对象, 并辨别那些不会再被引用的对象, 消除内存泄露.
关键字class表示类. 数据成员和成员函数.
假设数据成员是某个对象的引用, 则必须初始化指向实际对象.
假设数据成员是基本类型, 则会默认初始化, 但局部变量并不会初始化, 并报错.
程序似乎仅仅是一系列带有方法的对象组合, 方法以其它对象为參数, 并发送消息给其它对象.
类库反过来使用自己的Internet域名, 包名小写.
Java消除向前引用, import导入一个包或类库, 使用”*”代表全部类.
static关键字, 未创建某个类的对象也能够使用static方法和数据.
使用类名是引用static变量和方法的首选方式.
static方法比喻为”牧羊人”, 负责看护与其隶属于同一类型的实例群.
import java.util.Date;
public class Main {
public static void main(String[] args) {
System.out.println("Hello, it's: ");
System.out.println(new Date());
}
}
文件的开头须要声明import, java.lang会自己主动导入每个java文件.
/**
* 显示属性
* Created by wangchenlong on 15/7/5.
*/
public class ShowProperties {
public static void main(String[] args) {
System.getProperties().list(System.out);
System.out.println(System.getProperty("user.name"));
System.out.println(System.getProperty("java.library.path"));
}
}
凝视和嵌入式文档:
@see : 链接引用其它类
{@link package.class#member label} : 用于行内链接引用
{@docRoot} : 文档根文件夹的相对路径
{@inheritDoc} : 继承文档凝视
@version : 版本号信息
@author : 作者信息
@since : 程序代码的早期版本号
@param : 參数
@return : 返回值
@throws : 异常
@deprecated : 遗弃的, 新版@Deprecated
//: object/HelloDate.java
import java.util.Date;
/**
* Display a string and today's date.
* @author C.L.Wang
* @author Caroline Wendy
* @version 4.0
*/
public class Main extends ShowProperties {
/**
* Entrv point to class & application.
* @param args array of string arguments
* @throws java.lang.Exception No exceptions thrown
*/
public static void main(String[] args) {
System.out.println("Hello, it's: ");
System.out.println(new Date());
}
/**
* Output:
* Hello, it's:
* Sun Jul 05 21:32:28 CST 2015
*///:~
}
编码风格:
驼峰风格 - 类名首字母大写, 方法首字母小写.
Java - Thinking in Java 第2章 一切都是对象的更多相关文章
- Java编程思想 4th 第2章 一切都是对象
Java是基于C++的,但Java是一种更纯粹的面向对象程序设计语言,和C++不同的是,Java只支持面向对象编程,因此Java的编程风格也是纯OOP风格的,即一切都是类,所有事情通过类对象协作来完成 ...
- Think in Java(Java编程思想)-第2章 一切都是对象
1. String s = "asdf"//创建一个String引用,并初始化. String s = new String("asdf")//创建一个新对象, ...
- 《Java编程思想》笔记 第二章 一切都是对象
1.对象存储位置 对象的引用存在栈中,对象存在堆中.new 出来的对象都在堆中存储.栈的存取速度较快. 所有局部变量都放在栈内存里,不管是基本类型变量还是引用类型变量,都存储在各自的方法栈中: 但是引 ...
- [Java编程思想] 第二章 一切都是对象
第二章 一切都是对象 2.1 用引用操纵对象 创建一个String引用: String s; 这里所创建的只是引用,并不是对象. 创建一个引用的同时便初始化: String s = &qu ...
- [Java编程思想-学习笔记]第2章 一切都是对象
2.1 创建新的数据类型:类 通过第一章掌握了面向对象的理论后,我们知道每个对象必定属于一个类型,那么Java如何创建新的数据类型?如下程序所示: class Circle { // 属性 // 方 ...
- 初读"Thinking in Java"读书笔记之第二章 --- 一切都是对象
用引用操纵对象 Java里一切都被视为对象,通过操纵对象的一个"引用"来操纵对象. 例如, 可以将遥控器视为引用,电视机视为对象. 创建一个引用,不一定需要有一个对象与之关联,但此 ...
- 《java编程思想》P22-P37(第二章一切都是对象)
1.JAVA操纵的标识符实际上是对象的一个"引用";如String s;里的s是String类的引用并非对象. 2.程序运行时,有五个不同的地区可以存储数据. (1)寄存器:最快的 ...
- Java基础知识笔记第四章:类和对象
编程语言的几个发展阶段 面向机器语言 面向过程语言 面向对象语言:封装.继承.多态 类 类声明 class Person{ ....... } class 植物{ ....... } 类体 类使用 ...
- Java编程思想读书笔记(二)【一切都是对象】
begin 2018年1月9日17:06:47 第二章 一切都是对象 Java语言假设我们只进行面向对象的程序设计. 2.1 用引用操纵对象 每种编程语言都有自己的操纵内存元素的方式 操纵内存元素的方 ...
随机推荐
- 记一次BootStrap的使用
效果图如下: 一.简介: 什么是Bootstrap? Bootstrap 是一个用于快速开发 Web 应用程序和网站的前端框架. 什么是响应式布局? 引用一句Bootstrap的标题语 “Boots ...
- 我一不小心把ubuntu里的ps这样的命令删掉了,应该怎么重装呢
sudo apt-get --reinstall install procps
- angular-表格
ng-repeat 指令可以完美的显示表格. <div ng-app="myApp" ng-controller="customersCtrl"> ...
- freemark实现遍历 list,每行三个
我的做法是先做一个模板,这三个只都是从list里取出来的 在后台将每三个值放到一个map里 List<Map<String, Object>> newsList=new Arr ...
- Linux防火墙限制指定port仅仅能由指定IP訪问
须要对redis的端口做限制,仅仅能让公司内指定IP的机器訪问 -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT -A ...
- 最全Pycharm教程(29)——再探IDE,速成手冊
1.准备工作 (1)确认安装了Python解释器,版本号2.4到3.4均可. (2)注意Pycharm有两个公布版本号:社区版和专业版,详见 Edition Comparison Matrix 2.初 ...
- Document properties
http://devnet.kentico.com/docs/7_0/devguide/index.html?document_properties_overview.htm You can edit ...
- CxImage的使用及基本用法
基本定义:CxImage类库是一个优秀的图像操作类库.它可以快捷地存取.显示.转换各种图像. 下载地址:http://www.codeproject.com/KB/graphics/cximage.a ...
- java布局管理
FlowLayout :组件在一行中按加入的先后顺序从左至右水平排列,排满后折行,每行中的组件都居中排列.BorderLayout:把容器空间划分为北.南.西.东.中五个区,每加入一个组件都应说明把这 ...
- select … into outfile 备份恢复(load data)以及mysqldump时间对比
select … into outfile 'path' 备份 此种方式恢复速度非常快,比insert的插入速度要快的多,他跟有备份功能丰富的mysqldump不同的是,他只能备份表中的数据,并不能包 ...