2021-01-31

java面向对象

java之前也学过一些,但是之前学的过于零散,之后对这里进行了一些整理

什么是面向对象,我感觉说这个是应该和面向过程比较来说更为清晰。

举一个简单的例子,就是关门。面向过程分析需要的动作,把是一个个的动作按顺序的组合。而面向对象是,描述人在关门中的行为。

面向过程:强调的是功能行为,一种过程,先干啥,再干啥;
面向对象:将功能封装到对象里,强调的是具备某功能的对象;

按照面向对象的思想,可以把任何的东西看做对象!

面向对象的三个特征:
封装
继承
多态

封装:把同一类事物所具有的共同属性和共同行为功能抽取到Java类中的过程称为封装并将类里面的数据和行为进行保护。常用方法为:设置数据的访问修饰符为private,这样外部的事物就不能随意更改类中的数据。
eg:
class Car{
private String name;//私有成员,名称
private String color;//私有成员,颜色
private String size;//私有成员,大小
public String getName(){
return name;
}
public String getColor(){
return color;
}
public String getSize(){
return size;
}
public void setName(String name){
this.name=name;
}
public void setColor(String color){
this.color=color;
}
public void setSize(String size){
this.size=size;
}
}
public class Test{
public static void main(String[] args){
Car b=new Car();//实例化操作
b.setName(“宝马”);//赋值
b.setColor(“红色”);
b.setSize(“大型”);

//很明显这些过程看不到如何实现。
String name=b.getName();//取值
String color=b.getColor();
String size=b.getSize();

//最后输出结果
System.out.println(name+":"+color+":"+size);
}

继承:子类继承父类的所有非private成员。
继承是面向对象最显著的一个特性。继承是从已有的类中派生出新的类,新的类能吸收已有类的数据属性和行为,并能扩展新的能力。

关键字:extends / super

super关键字是一个特殊的变量,它提供了对父类的方法。可以用super主动调用父类的构造方法、访问父类中的成员,调用父类的构造方类继承关系。

为什么不能多继承?会产生混乱,但可以通过接口等方法实现多继承的功能实现。

方法重载:

在一个类中,如果出现了两个或者两个以上的同名函数,只要它们的参数的个数,或者参数的类型不同,即可称之为该函数重载了

方法重写:继承关系,子类多父类的方法体进行了修改了我们将其定义为重写

多态:
(1)父类类型的变量可以指向子类类型的对象。
(2)能够调用什么方法取决于变量的类型。
(3)具体调用什么方法取决于对象的类型。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值