类的继承_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > 类的继承

类的继承

 2013/7/12 0:14:54  王浩洋  程序员俱乐部  我要评论(0)
  • 摘要:类的继承1.类的继承的格式:publicclass子类名extends父类名{}2.继承到了什么:子类继承了父类所有的方法和属性,调用的时候需要分情况说明。1.子类和父类在同一个包下:默认的、受保护的、公有的属性和方法能在子类中和子类的对象直接调用。2.子类和父类不在同一个包下:公有的属性和方法可以在类中和子类的对象直接调用。受保护的属性和方法就只能在类中直接调用。3.方法的重写根据需要,子类当然应有自己特有的方法。当子类中某个方法的定义与父类中的完全相同时,这种情况就叫做方法的重写。
  • 标签:继承
类的继承
1.类的继承的格式:
    public class 子类名 extends 父类名{}
2.继承到了什么:
   子类继承了父类所有的方法和属性,调用的时候需要分情况 

说明。
    1.子类和父类在同一个包下:
默认的、受保护的、公有的属性和方法能在子类中和子类的

对象直接调用。
    2.子类和父类不在同一个包下:
公有的属性和方法可以在类中和子类的对象直接调用。
受保护的属性和方法就只能在类中直接调用。
3.方法的重写
     根据需要,子类当然应有自己特有的方法。当子类中某个方法的

定义与父类中的完全相同时,这种情况就叫做方法的重写。(温馨提

示:方法重写时子类方法的访问修饰符必须要大于或者等于父类方法

的访问修饰符)当需要调用父类中被重写的方法时要用super关键字
  
示例代码:
    父类中:
public void study(){   
                System.out.println(getName+"要好好学习");    
 }  

public void study(){
             	System.out.println(getName+"要好好学习"); 
 }

    子类中:
public void study(){   
                  super.study();//调用父类study方法   
        System.out.println(getName+"要独立思考独立学    
  
习");   
 }  

public void study(){
                  super.study();//调用父类study方法
   		System.out.println(getName+"要独立思考独立学 

习");
 }

4.自动转型
自动转型:指的就是子类对象类型会自动转型为父类对象类型
如UNstudent是Student的子类
Student uns=new UNStudent();中的uns会自动的转型为父类类型,
此时uns只能调用父类中的方法或在子类中重写的父类方法,子类中
特有的方法不能被其调用。
5.多态
多态指:方法重载,类的继承,自动转型等的集体表现,
当相同类型的对象调用相同的方法时得到的结果可能不同。
示例代码:
public class Author extends Man{   
       public void Live(){   
        System.out.println(getName+"靠写作为生");   
 }   
 public class Singer extends Man{   
       public void Live(){   
        System.out.println(getName+"靠唱歌为生");   
 }  

public class Author extends Man{
       public void Live(){
		System.out.println(getName+"靠写作为生");
 }
 public class Singer extends Man{
       public void Live(){
		System.out.println(getName+"靠唱歌为生");
 }

分别实例化一个对象(类型相同):
 
Man man1=new Author();   
   Man man2=new Singer();  

 Man man1=new Author();
    Man man2=new Singer();

调用相同的方法:
 
    man1.Live();--调用的是Author中的Live方法 
    man2.Live();--调用的是Singer中的Live方法 

发表评论
用户名: 匿名