用java编写的一个父类两个子类并且父类里含有三个成员变量五个成员方法,子类一里加两个成员方法和变量。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用java编写的一个父类两个子类并且父类里含有三个成员变量五个成员方法,子类一里加两个成员方法和变量。相关的知识,希望对你有一定的参考价值。

用java编写的一个父类两个子类并且父类里含有三个成员变量五个成员方法,子类一里加两个成员方法和变量。子类二修改两个变量,修改两个方法的程序。

import java.util.Date;

public class $ 

    public static void main(String[] args) 

        Father f = new Father("test");
        f.getA();
        f.getB();

        f = new Son1();
        f.getA();
        f.getB();

        Son0 son = new Son0();
        son.getA();
        son.getB();
        son.getC();
        son.getD();
    


class Father 
    private int id;
    private String name;
    private int age;
    private boolean sex;
    private Date birthDay;

    public Father(String name, int age, boolean sex) 
        this.name = name;
        this.age = age;
        this.sex = sex;
    

    public Father() 
        this(null, 0, false);
    

    public Father(String name) 
        this(name, 0, false);
    

    public void getA() 
        System.out.println("father a");
    

    public void getB() 
        System.out.println("father b");
    


class Son0 extends Father 
    private String sonName;
    private in sonId;
    public void getC() 
        System.out.println("Son0 c");
    

    public void getD() 
        System.out.println("Son0 d");
    


class Son1 extends Father 
    private String sonName;
    private in sonId;
    public void getA() 
        System.out.println("Son1 a");
    

    public void getB() 
        System.out.println("Son1 b");
    

结果:
father a
father b
Son1 a
Son1 b
father a
father b
Son0 c
Son0 d

追问

怎么运行不了呀

追答

你的java文件名和class是否一致?class 是$,你的文件改成$.java,或者别的也行,但必须一致

参考技术A public class p 
String name;
String sex;
int age;
public String getName() 
return name;

public String getSex() 
return sex;

public int getAge() 
return age;

public void setAge(int age) 
this.age = age;

public void setName(String name) 
this.name = name;


class c1 extends p
String address;
String birthday;
public String getAddress() 
return address;

public void setAddress(String address) 
this.address = address;

public String getBirthday() 
return birthday;

public void setBirthday(String birthday) 
this.birthday = birthday;


class c2 extends p
public void setName(String name) 
this.name = name;

public void setSex(String sex) 
this.sex = sex;

父类的成员变量赋了值,子类继承该变量,值还是父类的值吗?

还有子类赋值给父类变量,在父类里这个变量值会变吗

一般你不在子类中重载构造函数 子类成员变量初始化的就是父类的值 参考技术A 当然是父类值,子类没赋值是null的
第二个的问题:肯定不会啦。
你问题很奇葩,题目本身有错,很多时候要按实际情况看的本回答被提问者采纳
参考技术B 不会,因为变量属于个人的属性,子类对象的属性和父类对象的属性不属于同一个 参考技术C 1. 假设父类叫father,son是father的直接子类, 两个类里面都有一个叫age的成员变量。创建实例对象后,这两个age其实是在不同的内存空间里的,是分别独立的。比如在father中可以对age赋值50,在son中可以对age赋值25。那么在son类中,这样的语句 int a = age, 那么这个a是25,如果写 int a = father.age 或者 int a = super.age, 那么a是50.
2. 如果子类能够访问父类(包括但不限于father里面的这个变量前不能有private,final修饰词,java权限控制还是比较严格的),那么子类可以修改父类的变量值,通过 super.age = 100, 就可以改变father里面age的值,不过这并不是一个好的编程习惯。
参考技术D 1.不是了。
2.不会。

以上是关于用java编写的一个父类两个子类并且父类里含有三个成员变量五个成员方法,子类一里加两个成员方法和变量。的主要内容,如果未能解决你的问题,请参考以下文章

面向对象总结

父类的成员变量赋了值,子类继承该变量,值还是父类的值吗?

JAVA之继承

ts 怎么在父类调用子类的方法

JAVA中,子类将继承父类的所有属性和方法么~?为啥?

java在子类里调用一个有参的构成函数,会默认调用父类的构造函数吗,为啥???