java小白学习1

java入口

//人的一天
class Person {
    private String personName;//private私有方法,实例无法访问
    String personName2;//相当于 prototype原型属性

    //java可以有多个构造方法
    public Person() {//相当于 Person的constructor , 构造方法无需设置返回类型
        //如果没有声明构造方法,会默认生成一个 无参构造方法
        //如果声明了构造方法,无论有参/无参,系统都不会再自动添加无参的构造方法 --> 所以此时,如果没有声明无参构造方法,子类extends时会报错
    }

    public Person(String personName) {//相当于 Person的constructor , 构造方法无需设置返回类型
        this.personName = this.personName2 = personName;
    }

    public void start() {//相当于 prototype原型方法
        eat();
        play();
        sleep();
    }

    //private私有方法,实例无法访问
    private void eat() {//返回类型为空 --> void
        System.out.println("eat");
    }

    private String play() {//返回类型为String --> String
        System.out.println("play");
        return "String";
    }

    private Number sleep() {//返回类型为Number --> Number
        System.out.println("sleep");
        return 15951397;
    }

    //展示一下方法重载
    public Number plus() {
        return 0;
    }

    public Number plus(String str) {
        return 1;
    }

    public Number plus(Number num) {
        return 2;
    }
}

public class Aday extends Person {//继承Person类

    public Aday(String personName) {
        super(personName);//分发参数给父类
    }

    //重写start方法
    public void start() {
        System.out.println("strat by Aday.class");
        super.start();//此时可以使用super.start(),访问父类中的start方法
    }

    //Aday.java文件的入口,main方法
    public static void main(String[] args) {
        Person daniao = new Aday("daniao");
        Person dagou = new Aday("dagou");
        daniao.start();
        dagou.start();
        System.out.println("--------------------------------------------------");
        System.out.println(daniao.personName2);
        System.out.println(dagou.personName2);
        System.out.println("--------------------------------------------------");
        System.out.println(daniao.plus());
        System.out.println(daniao.plus("1"));
        System.out.println(daniao.plus(1));
    }
}

猜你喜欢

转载自blog.csdn.net/qq_39571197/article/details/82986147