类的继承、方法重写、自动转型

类的继承、方法重写、自动转型
 
1、类的继承
  在类与对象的总结中说过,所谓类就好比生活中的种类,一些具有
相同特征的事物的总称。而类的继承就像是一个种类的事物的延伸
或说繁衍出来的子类,子类具有父类所具有的所有属性以及方法,也
就是在Java编程语言中所说的子类继承父类的所有属性和方法。继承
的关键字:extends。还需注意的是Java中的继承是单继承。比如现在
我们建一个学生类:

public class Student{
 //设置学生的属性
public String name;//姓名
public int scro;//学分
public String subject;

 //设置学生的学习方法(构造方法)
public Student(String name,int scro){

this.name=name;
 this.scro=scro;
 }

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

 public void setScro(int scro){
 this.scro=scro;
}

 public int getScro(){
 return scro;
}
public void setSubject(String subject){
 this.subject=subject;
}
 public String getSubject(){
 return subject;
}

 //学习的方法
public void study(){
 System.out.println(name+"在学习,学分是"+scro);
}

}

 
接下来建一个大学生类,让他继承学生类:

public class UStudent extends Student{

 //该类继承自学生类,所以学生类中的
//三个属性都已经具备
//可以给其添加一个科目属性


//构造方法
public UStudent(String name,int scro){
 //调用父类的构造方法
super(name,scro);//super关键字是在子类中调用
          //父类的方法
}


 //方法的重写:访问修饰符 返回值类型 方法名 参数类型
//个数顺序必须相同,但他们具体实现({}中的代码)不同
public void study(){
System.out.println(name+"正在学习"+subject+"学分是"+scro);
}

}

 
关于子类所能继承父类中的那些方法和属性与其所附带的
访问修饰符有关:
访问修饰符   类中 同包中 有继承关系不同包中  不同包
public   可以 可以 可以 可以
protected  可以 可以 可以 不可以
默认的    可以 可以 不可以 不可以
private   可以 不可以 不可以 不可以
不难发现,当访问修饰符为public时调用权限与路径无关。


自动转型
建一个执行类:

public class Text{

 public static void main(String []args){
 //自动转型:用父类声明一个对象名 用对象名指向子类对象。
Student stu=new UStudent("张三",2);
 //本质上是子类对象,只是当是父类对象使用
stu.setSubject("第二门外语");

stu.study();

} 
}

 
自动转型作用:把子类没有的而父类有的方法实现自动调用。调用时编译器会先在子类中寻找
是否有重写了的该方法,没有时才会调用父类中的方法。

                      梣梓
                     2014、09、26

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值