java 封装 + 构造器 + 继承 + 多态 + 方法的重写、复写

java的封装
1、属性private化,提供get、set方法来访问和设置属性
2、我们在设计类的时 方法和属性属于哪一个类就编写到那一个类,不能编写到其他类
java.lang.NullPointerException : 空指针异常
java构造器: 又叫构造方法
public 类名( ) {}

构造器绝对没有返回值 但是可以有参数
构造方法:
//handsome

public class BeautifulGril {
    private String name;
    private int age;
    private double height;


    public BeautifulGril(){

    }

java在new对象的时候调用的就是构造器
//构造方法
BeautifulGril meimei1 = new BeautifulGril(“泰勒”,29,1.80);
BeautifulGril meimei2 = new BeautifulGril();

两个原则:
1、我们java文件会默认帮我们编写一个无参构造器
2、当我们需要自定义构造器的时候,我们尽量写两个
一个无参构造器,一个是我们自己要使用的有参构造器

继承: 所谓的继承本质就是代码的拷贝:通过关键字extends来实现,

package demo_extends2;

public class Animal {

    private String name;
    private int age;
    private String sex;

    public void setName(String name){
        this.name = name;
    }
    public String getName() {
        return this.name;
    }

    public void setAge(int age) {
        this.age = age;
    }
    public int getAge() {
        return this.age;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }
    public String getSex() {
        return this.sex;
    }

}

package demo_extends2;

public class Dog extends Animal{

    private String pingzhong;

    public void setPingzhong(String pingzhong) {
        this.pingzhong = pingzhong;
    }
    public String getPingzhong() {
        return this.pingzhong;
    }
}

Animal叫父类、基类、超类
dog叫子类,派生类

java的所有类默认继承自Object类


接口:
类:大量同一类型的数据的统称就叫类
对象:类下面具体存在的一个实例
关系:类是对象的模板,对象是类的实例

多态:
     一种对象有多种形态,父类对象存放子类数据,
     父类引用指向指向子类对象
     package demo_duotai;

import javax.swing.JFrame;

public class Test4S {

    public static void main(String[] args) {

        Factory f =new Factory();

        Car c = new Car();


        //造宝马
        c = f.createBmw();
        System.out.println(c.getBrand());
        //造奥迪
        c = f.createAudi();
        System.out.println(c.getBrand());
        Audi a = (Audi) c;

        //造奔驰
        c = f.createBenz();
        System.out.println(c.getBrand());

    }

}

从程序可以看出,   一个Car类型的对象c   既可以是Bmw 也可以是Benz,还可以是Audi,  这就是一个车的对象可以存放3种不同的数据,这就是多态的体现,   如果遇到特殊情况,我们需要将父类对象转换到子类对象需要强制转换,语法为

Audi a = (Audi) c;

方法的重写,所谓方法的重写,必须是有继承关系,子类觉得父类的某一个方法不好,把他的方法体进行了重新编写代码

也有叫方法的复写,方法的覆盖

public static void main(String[] args) {
Father f = new Father();
f.getMoney();
f = new Son();
f.getMoney();
f = new Son2();
f.getMoney();
}
“`

猜你喜欢

转载自blog.csdn.net/sky274548769/article/details/80526966
今日推荐