java 面向对象之我见
对于面向对象的思想,我想这是一个很宽很大的概念,很多是只可以意会,不可言传的。
我说一下我的理解,望指教
我对于面向对象的理解,主要是依据“万物皆对象”的说法,在java 的编程语言里面,所有的东西都是对象,就像老师在上课的时候说的那样:“班级里面没有男生和女生,有的只是对象而已。”
把现实生活中的物体或是其他的什么东西,都看成一个对象,用java的代码来具体的抽象和表示。
==========================
关于对象的概念
==========================
Booch offers an even more succinct description of an object:
An object has state, behavior and identity.
对象有状态,行为和标识。
上面是《thinking in java》第三版里面对于对象的定义。
这几天的学习知道,对于java面向对象有两种主要的说法。
package com.zidan.test; public class student { int userid; String usernameString; String addressString; int age; }
student stu = new student();
一、认为在类实例化的过程中,对象和实例是相同等价的;
认为stu既是对象,也是一个实例;
认为对象是一个很大的概念,他包含类对象和实例对象;
实例本身也是对象
对象是一个统称
可以分为类对象和实例对象
类对象是实力对象的模版
类似的概念有原类(metaclass),是类的模版
二、认为对象是一种引用,在上面student的例子中,对象stu是对类实例化之后得到的实例的一种引用。
student stu 创建一个对象,一个引用变量,变量的名字叫 stu
new student() 这是一个实例化的过程,产生一个对象,他的名字未知、或者说产生的这个对象是没有名字的;
student stu = new student() 式子中间的等号“=”,作用是:让引用变量stu 指向产生的那个对象。
=========================
关于类的概念
=========================
一些具有相同特征和行为的对象在一起组成的群体,叫做类。
好像在所有的编程语言中,都有类的存在,好像类是每个语言最最基本的组成部分。
一旦创建了一个成功的类,就可以通过这个类创建很多个对象,通过这些对象来作为解决每个问题的元素。
在java中,int,char,long,string,float等等,几乎所有的名字里面包含“类”这个字的关键字,都属于类的范畴。
====================================
关于面向对象的四大特征
====================================