面向对象,封装,继承,多态

本节要点:1.面向对象
2.封装
3.继承
4.类和方法
对象
对象是由数据(描述事物的属性)和作用于数据的操作(体现事物的行为)组成的封装体,描述客观事物的一个实体,是构成系统的基本单元。
class Dogs{
    private String name;  //名字
    private String age;   //年龄
    
    public String getName() {
        return name;
    }
 
    public void setName(String name) {
        this.name = name;
    }
 
    public String getAge() {
        return age;
    }
 
    public void setAge(String age) {
        this.age = age;
    }
}

类是对一组有相同数据和相同操作的对象的定义,是对象的模板,其包含的方法和数据描述一组对象的共同行为和属性。类是在对象之上的抽象,对象则是类的具体化,是类的实例。类可有其子类,也可有其他类,形成类层次结构
继承
继承是使用已存在的类的定义作为基础建立新类的技术,新类的定义可以增加新的数据或新的功能,也可以用父类的功能,但不能选择性地继承父类。通过使用继承我们能够非常方便地复用以前的代码,能够大大的提高开发的效率。
 继承是java面向对象编程技术的一块基石,因为它允许创建分等级层次的类。
继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。
#include <iostream>
using namespace std;
 
class Test
{
public:
    Test()
    {
        cout<<"Test::Test()"<<endl;
    }
private:
    int mc;
};
 
class Base
{
public:
    Base(int a)
    {
        ma = a;
        cout<<"Base::base()"<<endl;
    }
    ~Base()
    {
        cout<<"Base::~base()"<<endl;
    }
private:
    int ma;
    Test t;
};
 
class Derive : public Base
{
public:
    Derive(int b):Base(b)
    {
        mb = b;
        cout<<"Derive::derive()"<<endl;
    }
    ~Derive()
    {
        cout<<"Derive::~derive()"<<endl;
    }
private:
    int mb;
};
 
int main()
{
    Derive d(2);
     
    return 0;
}
封装
封装(encapsulation)即信息隐蔽。它是指在确定系统的某一部分内容时,应考虑到其它部分的信息及联系都在这一部分的内部进行,外部各部分之间的信息联系应尽可能的少。
public class A{
    private int age;
 
    
    //提供一个返回年龄的方法
    public int getAge(){
        return age;
    }
 
    //提供一个处理年龄误差的方法
    public void setAge(int age){
        if(age<80){
            age=18;
        }else{
            this.age = age;
        }
    }
}
 
 
public static void main(String[] args){
 
    A a = new A;
    a.getAge(81);
    system.uot.println(a.setAge);
方法
是完成某个功能的一组语句,通常将某个功能写成一个方法
定义方法就是编写有特定功能的一段代码,在程序中使用同样功能的地方可以调用定义好的方法,实现代码的重用
方法声明或称为定义方法
public class Demo01 {
    public static void main(String[] args) {
        
        //实际参数:实际调用传递给他的参数
        int sum = add(1, 2); //调用add方法
        System.out.println(sum);
        
        int max = max(20, 50); //调用max方法
        System.out.println(max);
    }
    
    //形参:用来定义作用的
    public static int add(int a, int b) {
        return a+b;
        
    }
    
    //比大小
    public static int max(int num1, int num2) {
        
        int result = 0;
        
        if (num1 == num2) {
            System.out.println("num1==num2");
            return 0; //return可以终止方法
        }
        
        if (num1 > num2) {
            result = num1;
        }else {
            result = num2;
        }
        
        return result;

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值