面向对象基础

类与对象


概念:

类:类是抽象的,是对一组有相同属性和行为对象的抽象中得来的,是对一组具有相同属性和共同行为的事物的一种抽象描述;

对象:对象是具体的,实例化的,拥有具体的属性和行为,通过new一组或一个对象可直接引用类中的属性或者调用类中的方法; 

面向对象编程思想:

思想:具体的事物(项目)既具体的对象,当一组对象具有相似的属性和行为,我们就可以对相似属性和行为进行分类,这是一个“抽象”的过程,提取相同属性和行为并归类,最后总结出一个描述类:描述一组具有相同属性和共同行为的一组对象;

编程体现:

1,我们编写类(包括属性和方法);可以通过编写测试类创建对象来测试 类的属性和功能,

2,可以通过类的属性(用对象进行初始化)将其他类进行封装,通过创建本类对象读写,调用其他对象(本类属性指向其他对象,并调用和访问其方法与属性);

3,这种思维做法既实现了代码的复用性,实现代码模块化,也使得程序员编写代码更具独立性

应用:

类:

(1)首字大写;

(2)类中只能写属性和方法

(3)成员变量(属性)写在方法外面,局部变量(属性)写在方法里面,方法里可以调用成员变量,方法外部不可以调用方法里的局部变量,

对象:

(1)通过对象访问类的属性和方法

(2)类 对象名=new构造方法;

(3)一类对象对应一个构造方法,没有写是默认创建无参构造方法;构造方法方法名相同,无返回值,属于实例方法,是方法重写的一种特殊用法,可以有无参构造方法和带参构造方法

类的属性:

(1)既可以是常用的8中基本数据类型,也可以是引用类型(如数组,对象等);

(2)当属性被封装起来时,其他类不一定可以访问本类属性,必须通过本类方法访问本类属性

(3)当我们通过方法访问本类属性时,注意在传参时如果属性名冲突,可通过this指向本类的属性(或方法)

类的方法:

(1)可分为构造方法和普通方法;

(a)构造方法:方法名相同,无返回值,属于实例方法,是方法重载的一种特殊用法,可以有 无参构造方法和带参构造方法,对应一类对象;

(b)普通方法:方法名不一定相同(相同则为方法的重载),注意静态方法和是否返回值问题

(2)普通方法也可分为无参方法和带参方法

(a)无参方法:本类通过方法名调用,其他类:实例化对象后直接通过类名.方法名调用,不能直接传参,

(b)带参方法:通过实例化对象,调用该方法并传参;应为要有面向对象思想,不可以在方法里直接输入参数,注意体现传参的意义;当传参名与属性名相同时,注意可能会引起歧义

(3)还可分为静态方法与实例方法;

(a)静态成员(变量,方法)可以用类名直接访问;也可以同过创建对象访问。但不可以访问实例方法;

(b)实例成员(普通属性和方法)可以随意访问静态成员

(4)方法的重载:

    方法名相同,参数的类型,个数,位置不同 

类的属性与方法的封装:

Private:只能类内部可直接访问,其他类必须通过set,get方法访问;

Protected:继承访问权限,只有自己和子类可以访问其中的属性和方法;

Friendly:只有同一个包内可以访问该类的属性和方法;

Public:接口访问权限,都可以访问;


猜你喜欢

转载自blog.csdn.net/lin542405822/article/details/80338161