9、一切都是对象

在Java世界中一切都被视为对象。尽管一切都看做对象,但操作的标识符实际上就是一个对象的引用,也就是说你拥有一个引用,并不一定需要一个对象与它关联。因此在操作一个对象之前,则可以先创建一个引用,例如:

String s; // 这是一个String类对象的引用

这里创建的只是引用,并不是对象,这是调用s返回消息那么就会显示错误。 所以必须创建对象。

一旦创建了 一个引用,就希望它与一个对象关联,通常用new操作符来实现这一个目的。 例如:

s = new String();

一个对象是如何 存储在内存中的呢?

  • 寄存器:这是最快的存储区,但是 数量极其有限,所以我们不能直接控制寄存器,在程序中也感觉不到寄存器的存在。
  • 堆栈:位于通用RAM(随机访问存储器中)这是一个快速有效的储存方法。创建程序是Java系统必须知道所有存储在堆栈中的所有项的生命周期,这点约束了程序的灵活性,所以堆栈中-存储引用,但是java对象并不在其中
  • 堆:内存池中没有生命周期的限定,所以在这个区域内存储java对象。

    ?

    ?

    ?

    ?

    ?

9.1 类

类是决定对象外观和行为的类型。通过class关键字创建, 后面紧跟类名:例如:

class People{

????/* 这是一个类 */

}

那么现在我们就可以来创建一个类的对象:

People
people = new People(); // 创建People类型的对象

现在这个类没有定义方法和属性,它什么都不能做。

9.1.1 字段和方法

?

一旦定义了一个类那么就可以在类中定义两个元素:

  • 字段: 是任何一种数据类型的引用,也可以是任何一种基本数据类型的一种
  • 方法: 这个操作字段,或者是行为

    ?

    ?

    例如:

    人有姓名: 可以在People类中定义一个String类型的字段存储名字

    人说出自己的名字,定义一个方法说出自己名字:

/**

* 定义一people类

* @ClassName: People

* @Description: TODO(这里用一句话描述这个类的作用)

* @author zjkorder

* @date 2015年12月11日
下午1:21:57

*

*/

class People{

????

????String name = "张三"; // 定义String类型的字段储存张三的名字

????

????/**

???? * 定义一个方法叫自我介绍
来说出自己的名字

???? * @Title: introduceMyself

???? * @Description: TODO(这里用一句话描述这个方法的作用)

???? * @param
设定文件

???? * @return void

???? * @throws

???? *

???? */

????public
void introduceMyself(){

????????System.out.println("我叫"+name);

????}

}

在类中的字段都有默认值,基本数据类型的默认值是:


Boolean


False


Char


Null


Byte


0


Short


0


Int


0


Long


0L


Float


0.0f


Double


o.0

?

9.1.2 方法

?

方法的基本组成部分包括:名称,参数,返回值和方法体

?

?

时间: 2024-08-06 09:05:46

9、一切都是对象的相关文章

深入理解javascript原型和闭包(1)——一切都是对象

“一切都是对象”这句话的重点在于如何去理解“对象”这个概念. ——当然,也不是所有的都是对象,值类型就不是对象. function show(x) { console.log(typeof(x));    // undefined            console.log(typeof(10));   // number            console.log(typeof('abc')); // string            console.log(typeof(true));

深入理解javascript原型和闭包(1)--一切都是对象

原文来自http://www.cnblogs.com/wangfupeng1988/p/3977987.html 这是我非常感兴趣的东西,原型和闭包,当我看到标题后,我就迫不及待的点开了.今天我自己学习一下,顺便借花献佛,不理解的也可以再看一看. "一切都是对象"这句话的终点在于如何去理解"对象"这个概念.所谓Object,其实是所有对象的祖宗,这句话不难理解,而值的类型不是对象. 首先咱们还是看一看JavaScript中一个常用的函数 - typeof(). ty

一切都是对象,一切都是指针,一切都是东西(python的编程哲学)

终于把1000多页的python学习手册啃完了.从来没有从深层次上去理解一门编程语言,学习c是如此,学习java也是如此.总觉得这些语言就是拿来用的.不用管它为什么要创造出来. 这几天认真系统的学习了python语言,泯泯之中和python的作者有点神交. 我的感受: 说python起源于c,一点都不过分.而且,处处是指针,处处是对象.不得不佩服作者的创造力,自己曾经也被c语言的指针整的焦头烂额.能不用就不不碰,那内存崩溃是刚刚的.没想象,python的作者把c语言的指针整这么溜,甚至发展成为一

第2章 一切都为对象

这一章介绍Java编程中一些基本的概念,有一些自己以前不知道的细节,加粗标出. 2.1 用引用操纵对象 Java中一切都视为对象,但操纵的标识符实际上是对象的一个"引用"(reference). 2.2 必须由你创建所有对象 1. 创建了一个引用后,需要用new操作符使它与一个新的对象关联. 2. 打脸说一下特例:基本类型boolean,char,byte,short,int,long,float,double,void 对经常使用的一系列类型,Java给予了特殊对待,不用new来创建

Java编程思想 2-1 一切都是对象

尽管 Java 是基于 C++ 的,但是相比之下,Java 是一种更纯粹的面向对象程序设计语言. 在本章,将看到 Java 程序的基本组成部分,并体会到在 Java 中几乎一切都是对象. 2.1 用引用操纵对象 Java 中通过引用(遥控器)操纵对象(电视机). 引用可以独立存在,并不一定需要有一个对象与之关联.比如:String s; 这里创建的只是引用,而不是对象.如果此时向 s 发送消息,就会返回一个运行时错误.因为此时 s 实际上没有和任何事物关联. 因此,一种安全的做法是:创建引用的同

2.JAVA编程思想——一切都是对象

一切都是对象 欢迎转载,转载请标明出处:http://blog.csdn.net/notbaron/article/details/51040221 尽管以C++为基础,但 Java 是一种更纯粹的面向对象程序设计语言 正式用它设计之前,必须先将自己的思想转入一个面向对象的世界 1      用句柄操纵对象 在 Java 里,任何东西都可看作对象.可采用一种统一的语法,任何地方均可照搬不误.注意,尽管将一切都"看作"对象,但操纵的标识符实际是指向一个对象的"句柄"(

理解javascript原型和作用域系列(1)——一切都是对象

“一切都是对象”这句话的重点在于如何去理解“对象”这个概念. ——当然,也不是所有的都是对象,值类型就不是对象. 首先咱们还是先看看javascript中一个常用的函数——typeof().typeof应该算是咱们的老朋友,还有谁没用过它? typeof函数输出的一共有几种类型,在此列出: function show(x) { console.log(typeof(x)); // undefined console.log(typeof(10)); // number console.log(t

java编程思想 一切都是对象

java是一种面向对象程序设计语言,一切都是对象,并且用引用操作对象,如一个电视机就是一个对象,而操作电视机的遥控器就是引用,引用可以单独存在,如遥控器可以单独存在. String s; 这里只是创建一个引用,并不是对象,如果此时向s发送一个信息就是返回一个运行时错误,因此一种安全的做法就是创建引用时就给它初始化, String s="adfa"; String s=new String("adfa"); 两种方式初始化是相同的.  

对于python,一切事物都是对象,对象基于类创建

新建列表.新建string字符串 1 li1 = [1, 2, 3, 4] 2 li2 = list([1, 2, 3]) 3 4 s1 = "abc" 5 s2 = str("abc") 6 7 print(li1) 8 print(type(li1)) 9 10 print(li2) 11 12 print(s1, s2) 13 14 #显示结果: 15 #[1, 2, 3, 4] 16 #<class 'list'> 17 #[1, 2, 3] 1

Java4Android之一切都是对象(1)

我们总是喜欢用C++和Java作为对比,虽然,这两者我都用过却又相忘于江湖.而我的第一份工作,却让我操着一口最为古老的语言(相对它两)C.当然,从下载库到Android的转换,逼迫者自己重新回到面向对象的世界... 1, 用引用操作对象. 在C/C++中,你可以直接操纵你的数据元素,也可以通过指针来简介的操纵,当然,C++中还有引用,引用是一个数据元素的别名,它指向的是同一个地方(希望没记错). 在Java中,一切都是对象,而对象的操纵却是通过"引用(Reference)".引用和对象