JAVA 学习前奏DAYSOF05

来源:互联网 发布:光明大陆pc和mac区别 编辑:程序博客网 时间:2024/04/19 11:19

1.1  面向对象

编程中还有一个面向过程的编程语言,如C,VB等。面向过程顾名思义就是注重的是过程了。比如说要和某个QQ好友发个信息,就要先打开QQ,输入用户名和密码,最后点击登录,登录欧克之后,找到他的QQ号,输入一段文字,点击发送,就发送欧克了。这个就是面向过程,它把一个问题的执行步骤,操作和处理都完整的表现出来了。而面向对象的话就是我叫张三给某个QQ好友发条信息,这时我们只需要知道发了没有,张三会怎么操作和处理。还有举个例子说某个老板刚开始自己搞项目,反正自己也是高技术的。通过需求分析,可行性分析、概念设计,程序编码,软件测试,等搞完之后,那个要求的公司早就不鸟了。所以发现他一个人搞不行,所以招聘几个程序员来做。只要满足是个Java程序员(或者其它)就可以了,这时老板就不会参加了。让程序员来做就行了。所以面向对象是一种思想,能使问题百年的简单化,能使角色发生转变,从执行者变为指挥者。在Java中万事万物皆为对象。面向对象有三大特征:①封装②继承③多态。

1.2  类和对象的关系

类就是对现实生活中的事物的描述,而对象就是这类事物实实在在存在的个体。在描述的时候比如说他们有姓名、年龄、性别和学习等功能,要说姓名是什么,年龄有多大……这些必须要具体落实到具体的个体中,这些都是提取的共性。比说张三李四等就可以知道姓什么,年龄多大等情况了。在Java中描述就是类(class),类是抽象的,而对象是具体的,对在堆内存中用new建立实体。所以定义类就是在描述事物,就是在定义属性和行为。属性和行为共同成为类中的成员。类中的成员变量和函数中的局部变量的区别是:成员变量在堆内存中,因为对象的存在而存在,而局部变量在栈内存中的。

匿名对象。匿名就是说不起名字,所以匿名对象是对象的简化形式。匿名对象使用的情况可以在当对象方法仅调用一次时调用,如果一个对象进行多个成员调用,那么给这个对象起个名字;还可以把匿名对象作为实际参数进行传递。

1.3  面向对象の封装(Encapsulation)

     封装就是把对象的属性和实现细节隐藏起来,对外仅提供公共访问方式。封装的好处就是能将成员变量隔离,使用的时候更方便,还有提高了代码的安全性、重用性和健壮性。隐藏成员变量要借助一个关键字private,它表示是私有的权限修饰符。但要明白的是私有只是封装的一种表现形式。既然对成员变量隔离,那么就要提供公共访问方式。对变量的操作只有取值和设值这两种情况。在Java有对成员变量的规定的规范。设值则用public void set成员变量(数据类型类型名){成员变量 = 类型名},而取值的方法是public voidget成员变量(){return 类型名}。封装要遵守2个原则:首先把不需要对外提供的内容隐藏起来,其次是把属性都隐藏起来,提供公共方法对其访问。

1.4  类中的构造函数

构造函数是一个函数,是类中的一个成员。构造函数的特点是函数名和类名相同,没有返回值和不用写return语句了。对象一建立的话,构造函数就会建立了。当一个类中没有显示添加一个构造函数时,系统会自动默认添加一个构造函数:类名() {}。但当类中有自定义的构造函数的时候,系统就不会添加共造函数了。构造函数的作用可以给对象进行初始化,所以类中默认添加的构造函数作用也是为了初始化对象,不然对象是无法被初始化的。当一个对象建立时,构造函数值运行一次。构造函数也是函数,所以也有函数重载的概念的。[]还要注意的小知识点的是构造代码块,它的出现作用是给对象初始化,构造代码块定义的是不同对象共性的初始化内容。看起来和构造函数的效果是差不多的。区对象一建立就运行,但优先于构造函数的执行。代码如下:

 

1.5  面向对象中this关键字

this的含义自己、本身的意思。在Java中的专业术语说this代笔它所在函数所属对象的引用。简单的说就是哪一个对象在调用this所在的函数,this就代表那个函数。构造函数中调用构造函数,用this语句,this(变量名);然后this语句必须要放在函数的第一行,因为是初始化要先执行(构造函数执行一次)。this语句只能用在构造函数间。

原创粉丝点击