首页 > 代码库 > 9.20 java继承

9.20 java继承

package liu0920;//继承public class Person {	//属性  姓名和年龄	private String name;	private  int age;		//无参构造方法//	public Person()//	{//		//	}	public Person(String name)	{		System.out.println("实例化父类=李四");		this.name=name;	}			public String getName() {		return name;	}	public void setName(String name) {		this.name = name;	}	public int getAge() {		return age;	}	public void setAge(int age) {		this.age = age;	}	public String getInfo()	{		return "name:"+name+"age:"+age;	}	}

  

package liu0920;//学生,做为人的子类//extends继承//1.java 支持单继承,不支持多继承:子类只能有一个父类,父类可以有多个子类//2.子类自动继承父类公开的成员//3.子类不能继承父类私有的成员和构造方法//4.子类可以扩展定义自己的成员//5.java.lang.objuct是所有类的根父类public class Student extends Person{    //属性	private String  school;	//构造方法	public Student()	{		//首先要去实例化父类,默认调用父类的默认的无参的构造方法		//显示调用父类的构造方法,必须在代码的第一句		super("李四");//实例化父类		System.out.println("实例化子类");	}		//成员方法	public String getSchool() {		return school;	}	public void setSchool(String school) {		this.school = school;	}	//方法的重写 覆盖	//1.必须和父类的方法具有相同的方法名称,参数列表和返回值类型	//2.子类的覆盖方法不能有比父类的更严格的访问权限控制(权限修饰符)	public String getInfo()	{		//子类调父类方法		//super 代表父类的实例		return "父类的信息:"+super.getInfo()+"子类的信息school="+school;	}	}

  

package liu0920;public class Ceshi_person {	public static void main(String[] args) {		//测试继承		//父类//		Person p=new Person();//		p.setName("张三");//		p.setAge(30);//		System.out.println("人的信息是"+p.getInfo());//				//子类				Student s=new Student();		//s.setName("小明");		s.setAge(20);		s.setSchool("清华大学");		System.out.println("学生的信息是"+s.getInfo());			}}

  技术分享

 

9.20 java继承