类和对象

一、面向对象简述

面向对象是一种现在最为流行的程序设计方法,几乎现在的所有应用都以面向对象为主了,最早的面向对象的概念实际上是由IBM提出的,在70年代的Smaltalk语言之中进行了应用,后来根据面向对象的设计思路,才形成C++,而由C++产生了Java这门面向对象的编程语言。

但是在面向对象设计之前,广泛采用的是面向过程,面向过程只是针对于自己来解决问题。面向过程的操作是以程序的基本功能实现为主,实现之后就完成了,也不考虑修改的可能性,面向对象,更多的是要进行子模块化的设计,每一个模块都需要单独存在,并且可以被重复利用,所以,面向对象的开发更像是一个具备标准的开发模式。

在面向对象定义之中,也规定了一些基本的特征:
(1)封装:保护内部的操作不被破坏;
(2)继承:在原本的基础之上继续进行扩充;
(3)多态:在一个指定的范围之内进行概念的转换。

二、类与对象的基本概念

类与对象时整个面向对象中最基础的组成单元。

类:是抽象的概念集合,表示的是一个共性的产物,类之中定义的是属性和行为(方法);
对象:对象是一种个性的表示,表示一个独立的个体,每个对象拥有自己独立的属性,依靠属性来区分不同对象。

可以一句话来总结出类和对象的区别:类是对象的模板,对象是类的实例。类只有通过对象才可以使用,而在开发之中应该先产生类,之后再产生对象。类不能直接使用,对象是可以直接使用的。

三、使用构造方法创建对象

1.new操作符创建一个对象,new后面的方法即是构造方法,构造方法是一种特殊的方法

2.有以下特殊之处:
(1)没有返回值类型
(2) 必须和所在类名字相同
(3) new操作符调用生成一个对象

在这里插入图片描述

四、构造函数

1.类中如果没有给定构造函数,系统会自动生成一个默认无参构造函数,如果人为 给定一个构造函数,系统则不会生成。

2.构造函数的作用
(1)类属性进行赋值
(2)给对象开辟内存空间

在这里插入图片描述

五、this引用类的当前实例

每一个类都会有自己的this引用 this引用指向当前对象本身 ,作用就是在类中,让类中的方法可以调用本类中的另外一个方法或者属性 。

六、静态变量

(1 )静态变量被类中所有对象所共享 static修饰的变量 , 如果想要访问静态变量,类名.XXX去访问,对象.XXX访问,推荐类名.XXX去访问 。
(2)静态变量值被存储在一个公共的内存空间中,如果说一个对象修改了当前静态变量值,对于其他对象来说是立即可见 。
(3)静态方法 static修饰的方法
在这里插入图片描述

七、实例方法和静态方法之间可以互相调用吗?

(1)非静态方法和非晶态属性都有一个this属性
(2)静态方法和静态属性不具备this属性
(3) 实例方法中可以访问静态属性和静态方法 , 静态方法中不可以访问实例属性和实例方法

八、访问修饰符

(1)public可以同时修饰类和成员变量、成员方法。从字面理解:公有的,public修饰的类可以被所有的其他的类访问或引用,也就是说其它类中可以创建该类的实例,访问该类所有可见成员变量,调用所有可见方法
(2)protectedprotected受保护成员,主要修饰类成员,在同一个包中可以被该类的子类或者其他的类访问。特别注意:分为与父类在同一包内和不在同一包内的子类,不在同一个包中的子类,只能访问从父类继承而来的受保护成员,而不能访问父类实例本身的受保护成员,在相同包内则没有以上的限制。
(3)default(默认,什么也不写):修饰类,在同一个包内可见,即该类只能被同一个包中的类访问或引用。
(4)private主要修饰类成员,表示该类成员只能被类自身访问,任何其他类都无法修改或者引用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值