------- android培训、java培训、期待与您交流! ----------
1:面向对象
(1)面向对象:是一种编程思想。
A:它是相对于面向过程而言的。
a:面向过程强调的是过程
b:面向对象强调的是对象调用功能,看最终的结果
B:它是基于面向过程的。
(2)面向对象的特点:
A:是一种符合人们思考习惯的一种思想。
B:把复杂的事情简单化了。
C:是我们从以前的执行者变成了现在的指挥者。
举例:
电脑城买电脑
宅男班长不出门吃饭
去饭店吃饭
自己洗衣服,做饭
面试怎么谈???
(3)类与对象的关系
A:类和对象分别是什么?
a:类 是对同一类事物的抽象
b:对象 是该类事物的具体的存在的个体
B:java是怎么来描述现实世界事物的?
a:现实世界的事物可以通过属性和行为来描述
b:java对现实世界的事物是通过类来体现的
c:java中的成员和现实世界事物的对应关系:
成员变量:属性
成员方法:行为
(5)注意:
A:有对象,就直接用。没有对象,就创建对象用。
B:如何创建对象呢?
通过new来创建对象。
格式:
类名 对象名 = new 类名();
C:如何使用对象呢?
对象名.方法名(参数)
对象名.属性名 其实这里是一个它所定义类型的数据
2:封装
(1)隐藏实现细节,提供公共的访问方式。
(2)好处:
使变化隔离
便于使用
提高复用性
提高安全性
举例:电脑机箱问题
(3)java中如何体现封装呢?
类,方法。
用private私有关键字体现。
A:是一个访问修饰关键字
B:可以修饰成员方法和成员变量
C:只能在本类中被访问
(4)代码体现:
class Student
{
//封装
private String name;
private int age;
//构造方法
public Student(){}
public Student(String name,int age)
{
//this关键字
this.name = name;
this.age = age;
}
public void setName(String name)
{
this.name = name;
}
public String getName()
{
return name;
}
public void setAge(int age)
{
this.age = age;
}
public int getAge()
{
return age;
}
}
3:继承
(1)继承:在java中,我们在定义一个类的时候,可以不用全部定义类中的内容,
通过继承把其他类的非私有功能可以直接拥有。
(2)父类:被继承的类。(超类,基类)
子类:继承其他类的类。
(3)继承的好处:
A:提高代码的复用性。
B:让类与类之间产生了关系,是多态的前提。
(4)使用继承:
格式:
class 类A extends 类B{}
什么使用时候继承呢?
假设判断法。
继承是:"is a"的关系 "x is a y"
(5)特点:
A:java只支持单继承
B:java可以支持多重(层)继承
内存图:
4:多态
(1)多态:就是对象在不同时刻代表的不同状态。
举例:
水(水蒸气,水,冰)
(2)多态的前提:
A:有继承关系
B:有方法的重写
C:有父类引用指向子类对象
举例:
class Fu{ public void show(){sop("Fu")} }
class Zi extends Fu{ public void show(){sop("zi")} }
多态:
Fu f = new Zi();
(3)多态的好处:
A:提高了代码的后期的维护性
B:提高了代码的后期的扩展性
弊端:只能使用父类中定义过的方法。子类特有方法不能使用。
(4)多态研究的内容(对象):
A:成员变量:
编译看左边,执行看左边
B:成员方法:
编译看左边,执行看右边
C:静态修饰成员:
编译看左边,执行看左边
注意:跟对象无关,也可以说不能算作多态的内容。
静态修饰的东西。
向上转型:为了多态使用对象
向下转型:为了使用对象的特殊功能
多态的内存图:
------- android培训、java培训、期待与您交流! ----------