-面向对象-

1.继承

    首先,不能为了继承而继承。

(1).概念:继承是使用已存在的类的定义作为基础建立新类的技术,新类的定义可以增加新的数据或新的功能,也可以用父类的       功能,但不能选择性地继承父类。通过使用继承可以提高代码复用性。继承是多态的前提。

(2)具体操作:继承是一种由已有的类创建新类的机制。利用继承,我们可以先创建一个共有属性的一般类,根据该一般类再创建具有特殊属性的新类,新类继承一般类的状态和行为,并根据需要增加它自己的新的状态和行为

  (3) 也就是说,子类需要对父类的方法加以改进,变成子类自己的方法,这就需要在子类中重新编写方法,覆盖父类的方法,这种做法在Java中叫做方法的覆盖。

父类:

public class Animal {
    private String name; //名称
    private String Sex; //性别
    private int Size; //大小
    private float weight; //体重
    //生成get 与 set 方法  Setter:赋值 Getter:取值
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }

    public String getSex() {
        return Sex;
    }

    public void setSex(String sex) {
        Sex = sex;
    }

    public int getSize() {
        return Size;
    }

    public void setSize(int size) {
        Size = size;
    }

    public float getWeight() {
        return weight;
    }

    public void setWeight(float weight) {
        this.weight = weight;
    }
    //写一个无参的构造方法
    public Animal() {

    }
    //写一个有参的构造方法
    public Animal(String name, String sex, int size, float weight) {
        this.name = name;
        Sex = sex;
        Size = size;
        this.weight = weight;
    }
    //写一个行为
    public void introduce(){
        System.out.println("我是"+Sex+name+",我的体重是"+weight+",我的身高是"+Size);
    }
    public  void eat(){
        System.out.println("我喜欢吃柿子!");
    }

    (3).由父类引用创建的对象,只能调用子类从父类继承的方法(当然包含重写的方法),不能调用自己扩展的方法。就像我们说:豹子是动物(向上转型),也可说:豹子会奔跑(调用从父类继承的方法),而不能说:动物是豹子(向下转型),也不能说:动物会爬树(向上转型的对象不能调用子类对象扩展的方法。

2.多态

    (1).所谓多态就是指程序中定义的引用变量所指向的具体类型和通过该引用变量发出的方法调用在编程时并不确定,而是在程序       运行期间才确定,即一个引用变量到底会指向哪个类的实例对象,该引用变量发出的方法调用到底是哪个类中实现的方法,必须在由程序运行期间才能决定。

 (2).举个例子就是多态指的就是多种形态,例如例如,同样是水的成份,但有液态水及冰的多种形态,同样是二氧化碳,就存在气态及液态等多种形态,同样是猫科动物,就有猫和老虎之别。

  (3).总结一下就是同一种对象,引用不同的实例,调用相同的方法,得到不同的结果。

3.final

//final修饰变量变常量
//final修饰类,类不能被继承
//final修饰方法,方法不能被重写
//final修饰对象,这个对象不能被在此引用

4.object

Java世界中,任意一个类均直接或间接由一个类演绎而来,这个类就是Object类, Object是类层次结构 的根类,每个类都使用Object 作为超类。所以, 个类都具有Object类所定义的特征。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值