Java教程 第十节:面向对象的基础

面向对象基础:
Java是一门面向对象的语言。c语言是一门面向过程的语言。
面向过程:就是把问题分解成一步一步的进行完成。
面向对象:把问题分解成不同的对象承担不同的职责。
类和类的关系:
1、has a:AhasB,包含关系,聚合关系。
2、is a:AisB:继承关系,或者实现接口。
3、use a:AuseB:使用关系,A需要用到B,依赖关系。往往是通过函数的参数来实现。
类和对象的关系:
1、对象抽象、提取共性,归纳成类
2、对象,是一个实例
3、对象有具体的状态和行为。而类,是描述、规范对象所拥有的属性和行为。
面向对象的计算机语言Java:
1、支持创建对象的操作,对象有静态属性(状态)和动态行为(职责)。
2、通过对象的互相协调,来完成问题
3、类和对象。先有类,后有对象
4、对象是通过对类进行实例化,对象是类的一个实例,通过构造方法来创建对象。
5、类,即类型的意思
6、类型,是程序员编写出来的
7、类型的名称,首字母按照规范大写。
面向对象的三大特性:
1、封装:将和对象相关的属性和行为定义在同一类里面,就形成了封装。是对象有自己承担的职责,有自己的状态。访问权限控制对封装的成员约束。
2、继承:子类(后代)继承父类(祖先类)的特性。一个子类只能继承一个父类。使用 extends 关键字
3、多肽:
关于封装的问题:
修饰符:(用于就是两大主要成员:属性和方法)
1、public:公有的,任何位置都可以访问
2、protected:受保护的。同一包内、子类可见。
3、<无>:无修饰符,空修饰符,友好访问修饰符,包访问修饰符,同一包内可见
4、private:私有的,只有当前类内部可见。外部不可访问。
关于Java中方法的注意问题:
1、void:没有返回值,如果有返回值,用return 调用返回值,如果调用代码,函数将不会执行。
2、函数如果不调用,不会执行
3、在函数中定义的参数,成为形参。在函数调用时,传递的参数称为实参。
4、return:表示传递返回值,
关于继承的问题:
一、什么成员可以被继承?
1、修饰符为非私有的会被继承,(也有人说私有成员可以被继承只是不被显示出来)
2、构造器(构造函数)不能被继承。
二、继承中需要注意的问题:
1、初始化子类的时候,必须先初始化父类。
2、一个类如果没有显示父类,则默认父类为 Object 类(Java顶级父类)。所有类直接或间接继承自 Object 类
3、Java是一种单根继承结构(树状继承机构),一个类只能继承一个父类
三、关于继承中的重写问题:
1、重写定义:子类覆盖父类(祖先类)的成员行为(方法)。
2、重写的前提是继承,继承父类(祖父类),然后重写在父类(祖父类)的方法签名。
重写和重载的区别:
1、重写:重写的是继承父类(祖父类)的方法,也就是说重写的方法名,方法参数和父类(或祖父类)的方法名、方法参数是一样的。
2、重载:重载是在同一类中,写的相同名字的方法,而方法参数不同,
四、继承中 super 的用法:
1、super. 可以直接访问父类(祖先类)的成员。
2、使用 super(...) 调用父类的构造函数。
五、继承中 instanceof 运算符的使用:
1、instanceof 运算符是用来判断一个对象是否是某一类的实例化
关于多态的问题描述:
同一个对象的多种形态。
使用父类(祖先类、接口类)的引用,指向一个子类(后代类、实现类)的对象。
当调用父类或祖先类的方法的时候,实际上真正去调用的是子类或者后代类的方法,直接执行的是引用所指向的对象。
文章原文地址:刘广法,转载保留出处,感谢