面向对象、重载、构造、封装
一.Java面向对象:
1.1面向对象三大特征:封装、继承、多态
1.2.软件出现的目的:
2.1用计算机的语言描述现实世界
2.2用计算机解决现实世界的问题
1.3面向对象的设计步骤
1.第一步:发现类
2.第二步:发现类的属性
3.第三步:发现类的方法
二、方法重载(是实现多态的方式之一)
1.在一个类中想定义多个同名的方法必需构成方法重载
2.满足方法重载的条件:方法名相同,参数类型不同、参数个数不同、参数顺序不同即可构成重载,返回值不参于重载
3.作用:将一些相似的功能归档在一起的一种机制
代码示例
调用
讯享网
输出结果

三、构造方法
1.什么是构造方法:当实例化对象时自动调用的方法称为构造方法
2.定义构造方法的语法:
public 方法名(参数列表){
方体体…
作用:完成属性初始化工作
}
注意:a.构造方法名必需与类名相同
b.每个类中都有一个默认不带不做任何事情的构造方法
例如:public 类名(){}
c.只要手动实现构造,默认构造就不存,必需手动添加默认构造
代码示例
调用构造方法
讯享网
四、访问修饰符
1.作用:限制类成员对外访问级别
2.访问修饰符分类:
public公有的:任何地方都可访问
private私有的:只能在类的类内部
protected受保护的:只能同一包中或者类的子类中可以访问
默认:同一个包中
五、封装
1.封装:将类的某些信息隐藏在类的内部,不允许外部程序直接访问,而是通过该类提供的方法来实现外隐藏信息的和访问
2.实现封装的步骤
2.1将类的属性定义为私有成员
2.2使用setter方法或者getter方法对私有成员进行封装
setter方法作用赋值
setter方法名:set属性名首字母大写()
getter方法作用取值
getter方法名:get属性名首字母大写()
代码示例
输出结果

继承和多态
一、继承
1.什么是继承:就是用子类(派生类)去继承父类(基类|超类)
2.作用:实现代码的复用
3.使用extends关键字实现继承
例如:public class 子类 extends 父类{}
注意:a.子类只能继承一个父类(单继承),不能实现多继承(借接口实现多继承)
b.私有成员,构造方法不能被继承
代码示例
先建一个Person类
student类继承Person类
Test类调用
可以看到Student类中有继承Person的属性
二、super关键字的作用
1.使有super关键字访问父类成员
super.属性|方法();
2.使用super关键字调用父类构造方法
super(参数列表);
三、实例化子类时构造方法的调用过程
四、方法重写(实现多态)
实现方法重写的步骤:
1.在子类中编写重写方法
在子类中定义与父类具有相同签名的方法(重写方法)
2.发生重写
父类名 引用名=new 任何子类名();
引用名.父类方法名();
代码示例
先定义一个父类
定义一个子类

测试
五、抽象类
1.什么是抽象类
使用abstract定义的为抽象类
注意:a.抽象类中可以定义抽象方法
b.抽象类不能实例化,只能继承使用
2.什么是抽象方法
使用abstract定义且没有方法体的方法为抽象方法
例如: public abstract 返回值类型 方法名(参数列表);
代码示例
输出结果

多态的应用
一、final关键字
1.使用final修饰的类称为终态类,不能被继承
2.使用final修饰的方法称为最终方法,不能被重写
3.使用final修饰的属性必需初始化,不能重新赋值
二、static关键字
作用:定义静态成员,或者定义静态码块
注意:静态成员归类所有
1.定义静态属性
public static double money=100;
2.定义静态方法
public static void smethod(){
…
}
3.调用静态属性方法:
类名.属性名|方法名();
代码示例
三、多态
1.生活中的多态
同一种事物,由于条件不同,产生的结果也不同
2.程序中的多态:
同一个引用类型,使用不同的实例而执行不同的操作
父类 引用名=new 任何子类();
多态应用示例
USB类
鼠标类
键盘类
测试类,usb可以实现键盘、鼠标功能
运行结果
四、子类与父类的转换
1.向上转型(自动转换):子类对象向父类转换
2.向下转型(强制转换):将父类引用转化为子类
//注意:父类不能访问子类成员,重写方法除外
子类名 对象象=(子类名)父类引用名;
3.instanceof关键字
保定0基础java 作用:判断某个对象是不是该类的对象,是返回true,反之返回false
语法
对象 instanceof 类名
接口的使用
一、接口
作用:解决多重继承
1.使用interface关键字定义接口
public interface 接口名{
//一系列抽象方法
}
注意:a.接口不能被实例化,而只能被实现
b.接口中的方法都为抽象方法
[public abstract] void service();
c.接口也可以被继承
d.接口中的属性全是静态常量
[public static final ]int A=10;
2.使用implements关键字实现接口
public class 类 implements 接口1,接口2…{
//必需实现接口中所有的抽象方法
}
3.使用接口
接口名 引用名=new 任何实现接口类的对象();
引用名.方法名(); //调用重写方法
代码示例
运行结果

二、理解接口的应用
1.接口表示一种功能(能力)
代码示例
2.接口表示一种约定
代码示例
运行结果

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/8919.html