黑马程序员(学习笔记二)初识java特点
2012-06-06 17:03
399 查看
--------------------android培训、java培训 、期待与您交流! ----------------------
Java特点——面向对象。
总的说 java具有以下几个特点:
(1) 面向对象
(2) 可移植性
(3) 安全性
(4) 并发机制
(5) 支持可视化视图
所为面向对象其实是现实世界模型的自然延伸。现实世界中任何实体都可以看作是对象。在java中就是所谓的“万物皆对象”对象之间通过消息相互作用。
比如说去一个公司面试,面试官问什么是面向对象,那么你就可以说 ,我和你目前状态就是面向对象,我是一个对象,我具有编程功能。你也是一个对象,你有面试功能还有使用功能。如果你觉得我的功能够强大,那么你可以调用(借用)我的功能来为你服务,我们是想共赢!这就是面向对象。
从这个例子 可以看出现实世界中任何实体都可归属于某类事物,任何对象都是某一类事物的实例。而每个实例具有不同的功能。
当然所有面向对象编程语言都支持三个概念:
封装、多态性和继承,Java也不例外。
在开发中,其实就是我们找对象使用,没用对象时就创建一个对象。在java中类(class)与对象是什么关系呢? 类是生活中对事物的描述,对象就是这类事物是实现存在的一个个体。
例如: 现实生活中的 “张三”“李四”
想要描述提取对象共性内容,对具体的抽象描述时这些对象的共性有 姓名, 年龄,性别,国籍。当这些 共性内容映射到java中时就是class定义类。具体对象就是java仔对内存中使用new 建立的实体属性。对应类中变量。行为对应类中函数(方法)。
到这,一个小为题。简单说下堆和栈。 栈(stack)与堆(heap)都是Java用来在Ram中存放数据的地方。与C++不同,Java自动管理栈和堆,程序员不能直接地设置栈或堆。 区别是 栈内存 中数据一旦不适用就自动释放,而 堆 中 一旦数据不使用 java中垃圾回收机制 自动回收!
成员变量和局部变量区别:我的简单理解是成员变量作用在整个类中又可以称之为 全局变量 而局部变量 只能作用在函数或者方法内部中。这个和C语言区别不大(对C++,C#等不是很了解)。按毕老师的话说 ,成员变量在对内存中,因对象存在而存在,而局部变量在栈内存中。
例如:class Sum (){
int sum=0;
for(int y=0;y<10;y++){
Sum=sum+y;
}
System.out.println(sum);
}
这例子中 sum 是成员变量。他就是作用在全局。 而y 只能作用在 for里面。
封装:
含义:隐藏对象的属性和实现方式细节。仅对外提供访问方式。
好处:将变化隔离 提高重用性,提高安全性
原则 :将不需要对外提供的内容都隐藏起来。提供公共的访问方法。
可以说,对象是支持封装的手段,是封装的基本单位以说,对象是支持封装的手段,是封装的基本单位。
Private:私有 权限修饰符,用于修饰内中成员,成员变量,成员函数等。只能在本类中有效。
一旦将变量私有化后。类以外建立对象不能直接访问。就需要在该类中提供对应的访问方式(set get)*注意:私有只是封装的一种表现形式。
This: 代表本类对象。代表其所在函数,所属对象的使用。具体一点: 那个对象在调用所在函数,this代表那个对象。
This的应用方面:当定义类功能时,该函数内部要用到调用该函数对象时,这时就用this来表示这个对象,但凡本类功能内部使用到。
This 语句用于构造函数间互相调用 :构造函数间调用只能用this。只能定义在构造函数第一行,因为初始化对象药先执行。
---------------------- android培训、java培训、期待与您交流! ----------------------
详细请查看:http://edu.csdn.net/heima
详细请查
相关文章推荐
- 黑马程序员学习笔记四——Java 面向对象 特点之 继承
- 黑马程序员 JAVA基础学习笔记 继承等
- 黑马程序员 JAVA基础学习笔记 图形化等
- 黑马程序员---java学习笔记之交通灯
- 黑马程序员java学习笔记之四(java多线程总结)
- 黑马程序员_毕向东_Java基础视频教程学习笔记(五)
- 黑马程序员_java基础学习笔记07_IO流
- 学习笔记:java并发编程学习之初识Concurrent
- 黑马程序员——Java学习笔记之①——“Java编程基础”
- 黑马程序员——java基础学习笔记——第二天
- 黑马程序员:java.util.Properties类 学习笔记
- 黑马程序员 JAVA 学习笔记——类加载器
- 黑马程序员_毕向东_Java基础_DAY03_函数_学习笔记
- 黑马程序员学习笔记——如果用Eclipse查看java源码
- 黑马程序员 java学习笔记 Day3:字符串
- 黑马程序员---Java高新技术学习笔记(前篇)
- 黑马程序员---Java基础学习笔记(面向对象篇)
- 黑马程序员---java学习笔记之多线程
- 黑马程序员--JAVA基础知识学习笔记
- 黑马程序员:java学习笔记-接口和多态