类的继承

在java中,被继承的类叫超类(superclass),继承超类的类叫子类(subclass)

子类是超类的一个功能上的扩展,它继承了超类定义的所有属性和方法,并且添加了特有功能

所有的类都继承自java.lang.Object类,所以说Object类是所有类的父类。如果在定义类时不做规定,自己定义的类直接继承自Object类

 继承的语法

class 子类名 extends 父类名
 

 extends关键字用来实现继承

访问修饰符

public:用public修饰的类成员(包括字段和)方法被称为公有的,外界可以直接存取公有数据,调用公有方法

private:用private修饰类成员称为私有的,类的私有成员只能被这个类的方法直接访问

protected:  用protected修饰的成员称为被保护的,类的保护成员允许其子类继承,为了使子类能够直接继承父类成员,

 把这些成员(大部分是数据)说明为被保护的

default:  如果类成员前面没有任何访问修饰符,则称为默认,默认的类成员除了允许被其归属的类访问外,还允许

同一个包中的其他类访问

方法重写(override)

class 父类{                                                                                         
   访问权限   方法返回值类型   方法1(参数1){
  }
}
class 子类 extends 父类{
    访问权限   方法返回值类型   方法1(参数1){
  }
}

所谓覆盖 就是方法名称相同,但却在不同的场合做不同的事,子类重新定义了父类已有的方法,则称为方法覆盖

this关键字

this是指当前对象自己,当一个类要明确使用对象自己的变量或函数时应该加上this引用,例如:

public class Hello{
	
	String s="Hello";
	
	public Hello(String s)
	{
	  System.out.println("s = " + s); 
	  System.out.println("1 -> this.s = " + this.s); 
	  this.s = s; 
	  System.out.println("2 -> this.s = " + this.s); 
	}
	public static void main(String[] args) 
	{
	  Hello x=new Hello("Hello World!");
	}
}
super关键字

java方法的覆盖经常要用到的关键字,-super , 用来调用子类所复制父类的字段和方法

super.子类所复制父类的字段
super.子类所复制父类中的方法

static方法

子类不能覆盖父类中被声明的static方法

public class Person { 
  static String name;
  static int age;
  public static String talk(){
	  return "我是:"+name+", 今年:"+age+"岁";
  }
}

显示的错误信息:

这个实例方法不能覆盖Person.talk这个static方法

final方法

子类不能覆盖父类中被声明的final方法

public class Person { 
  static String name;
  static int age;
  public final String talk(){
<span style="white-space:pre">	</span>  return "我是:"+name+", 今年:"+age+"岁";
  }
}


显示的错误信息:

子类不能覆盖来自父类Person的final方法

多层继承

class A{
	//类主体
}
class	B extends A{
	//类主体
}
class	C extends B{
	//类主体
}
在Java类中不可以进行多重继承,但确是可以进行多层继承的。对于多层继承Java也只允许单继承,即一个子类只有一个父类,父类可以有多个子类。

继承的好处:

1.提高代码的重用性

2.让类和类之间产生关系,为多态创造了条件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值